БланкСШаблоном "Дополнительная информация";

var Учредители      :String; -- Учредители
var ОПФ             :String; -- Организационно-правовая форма предприятия:
var ФСобств         :String; -- Форма собственности предприятия:
var Отрасль         :String; -- Отрасль (вид деятельности)
var МРегистр        :String; -- Месяц регистрации
var ГРегистр        :String; -- Год регистрации
var ВидДеят         :String; -- Вид деятельности
var ОКПО            :String; -- ОКПО
var ОКОНХ           :String; -- ОКВЭД (ОКОНХ)
var ОКАТО           :String; -- ОКАТО
var ОКТМО           :String; -- ОКТМО
var КБК             :String; -- Код бюджетной классификации
var РПО_КОД_ГМП: String;
var РПО_ППП         :STRING; --Код ведомства
var РПО_НППО        :STRING; --Наименование публично-правового образования
var РПО_Страна      :STRING; --Страна
var РПО_ОКСМ        :STRING; --Код сmраны по ОКСМ
var РПО_СТАТУС      :STRING; --Статус поставщика
var РПО_СТАТУС_     :STRING=if(РПО_СТАТУС="1":"Субъект малого предпринимательства"
                              |РПО_СТАТУС="2":"Учреждение уголовно исправительной системы"
                              |РПО_СТАТУС="3":"Общероссийские общественные организации инвалидов"
                              |True:"");
var КОПФ            :STRING;
var КФС             :STRING;
var РПО_НМНМНС      :STRING;
var РПО_КОДМНС      :STRING;


var tplField:S;
var tplFrame:I;
var Run:L;

var Buf[]:S;
var fОКСМ:I;
var fОКОПФ:I;
--
--Процедуры и функции -------------
--Процедуры и функции -------------                           
--
--
--Обработчики событий полей шаблона-----
Func КОПФ_OnLookup(Sect: String; Row: Integer; Col: Integer; Cur: String): String;
var Rec: Record;
 Template.HideEditor(False);
 if fОКОПФ=0: fОКОПФ=ExecuteFuncI("Раб.Вспом.Контрагент_место.ЗагрузкаСправТекст","РПО_ОКОПФ","КОД","НАИМ",fОКОПФ); fi;
 Rec=Раб.Документы.ВыборСФильтром("РПО_ОКОПФ","Наим","");
 if not Rec=nil:
    ОПФ=GetCardFieldS("РПО_ОКОПФ",Rec,"Наим");
    КОПФ=GetCardFieldS("РПО_ОКОПФ",Rec,"Код");
 fi;
 Return Cur;
end;

Proc КОПФ_OnExit(FieldName: String; Iter: Integer);
var OWA:I;
 if not КОПФ="":
    OWA=OpenWorkArea("РПО_ОКОПФ","Код","Код='"+КОПФ+"'") ;
    Try
     if not Records(OWA)=0:
        ОПФ=GetFieldS(OWA,1,"Наим");
     fi;
    Finally
     CloseWorkArea(OWA);
    end;
 fi;
end;

Func РПО_ППП_OnLookup(Sect: String; Row: Integer; Col: Integer; Cur: String): String;
var Rec: Record;
 Template.HideEditor(False);
 Rec=OpenCardFile("РПО_БЮДЖ_КЛАСС_000","NAME_VOC='ППП2006'",nil,crdRecordOnly);
 if Rec=nil: ^Cur; fi;
 РПО_ППП=GetCardFieldS("РПО_БЮДЖ_КЛАСС",Rec,"CODE");
 Return Cur;
end;

Proc РПО_ОКСМ_OnExit(FieldName: String; Iter: Integer);
 РПО_СТРАНА = Раб.Договор.ИмястраныПоКоду(РПО_ОКСМ, True);
end;

Func РПО_ОКСМ_OnLookup(Sect: String; Row: Integer; Col: Integer; Cur: String): String;
var Rec: Record;
 Template.HideEditor(False);
 if fОКСМ=0: fОКСМ=ExecuteFuncI("Раб.Вспом.Контрагент_место.ЗагрузкаСправ",fОКСМ,"РПО_ОКСМ","Загрузить общероссийский классификатор стран мира ОКСМ ?"); fi;
 if fОКСМ=1:
    Rec=Раб.Документы.ВыборСФильтром("РПО_ОКСМ","ПОЛНИМЯ","");
    if Rec=nil: ^Cur; fi;
    --РПО_СТРАНА=GetCardFieldS("РПО_ОКСМ",Rec,"ПОЛНИМЯ");
    РПО_ОКСМ=GetCardFieldS("РПО_ОКСМ",Rec,"КОД");
    РПО_ОКСМ_OnExit("РПО_ОКСМ",0);
 fi;
 Return Cur;
end;

Func РПО_СТАТУС_OnEnter(FieldName: String; Iter: Integer): logical;
var n:i;
 ClearVariable(Buf);
 Buf[1]="Субъект малого предпринимательства";
 Buf[2]="Учреждение и предприятие уголовно-исправительной системы";
 Buf[3]="Организация инвалидов";
 Buf[4]="Социально ориентированная некоммерческая организация";
 n=Alternate("Статус поставщика",Buf,-1,Int(РПО_СТАТУС),12);
 if n=0: ^False; fi;
 РПО_СТАТУС=Str(n);
 Return False;
end;

Proc РПО_СТАТУС_OnExit(FieldName: String; Iter: Integer);
 РПО_СТАТУС="";
end;
--Обработчики событий полей шаблона-----
--
--Обработчики событий объектов шаблона-----
Proc btnЗакрыть_OnClick(Sender: String);
 Close;
end;
--Обработчики событий объектов шаблона-----
--
--
--Обработчики событий шаблона -----
Proc AfterOpen(Destroy: Logical);
 if Run:
    Run=False;
    if tplField="РПО_СТАТУС": tplField="РПО_СТАТУС_";
    fi;
    Template.Field=tplField; 
    if tplFrame>0: Template.Frame=tplFrame; fi;
 fi;
end;

Proc OnClose(Destroy: Logical);
 fОКСМ=0;
end;
--Обработчики событий шаблона -----
--



Конец
