-- Шаблон создан мастером бланков
-- 22.05.2014 13:57:01
--
БланкСШаблоном "Заявка на закупку, разрешения", Редактор РПО_ЗАЯВКА_ЗАКУП_РАЗРЕШ;

var Док_:S=Док.НомерДок;
var Общ_Справ_Наим1_:S=if(Док.ТипДок=nil,"",Док.ТипДок.Общ_Справ_Наим1);
var Общ_Справ_Наим2_:S=if(Док.ТипДок=nil,"",Док.ТипДок.Общ_Справ_Наим2);
var Упр1:L=not Общ_Призн1="";
var Упр2:L=not Общ_Призн2="";
var Инфо:S;
var ИнфоRec:Record;

var Buf[]:S;

--
--Процедуры и функции -------------
Proc ВзятьИнфо;
var OWA,n,nn:i;
 if Док=nil:
    Инфо="";
    ИнфоRec=nil;
    Exit;
 fi;
 RefreshCard("РПО_ЗАЯВКА_ЗАКУП");
 OWA=OpenWorkArea("РПО_ЗАЯВКА_ЗАКУП","","ПРЕ="+RecordToString(Док));
 Try
  if Records(OWA)=0:
     Инфо="Изменение пока не внесено";
     ИнфоRec=nil;
    else
     ИнфоRec=GetRecordKey(OWA,1);
     if GetFieldL(OWA,1,"Рег"):
        Инфо="Изменение принято к учету ("+DateToString(GetFieldD(OWA,1,"ДатаИзм"))+") "+DateToString(GetFieldD(OWA,1,"UpdateTime"))+" "+Раб.Бюджет2005.TimeToStr(GetFieldT(OWA,1,"UpdateTime"),"")+" "+GetFieldS(OWA,1,"MODIFIEDUSER");
       else
        Инфо="Изменение в процессе внесения "+DateToString(GetFieldD(OWA,1,"UpdateTime"))+" "+Раб.Бюджет2005.TimeToStr(GetFieldT(OWA,1,"UpdateTime"),"")+" "+GetFieldS(OWA,1,"MODIFIEDUSER");
     fi;
  fi;
 Finally
  CloseWorkArea(OWA);
 end;
end;
--Процедуры и функции -------------                           
--
--
--Обработчики событий полей шаблона-----
Func Дат_OnVerify(FieldName: String; Iter: Integer; Value: Date): logical;
 if not Док=nil:
    if not Year(Value)=Year(Док.ДатаРег):
       if EnqOkCancel("Год плана-графика "+Str(Year(Док.ДатаРег))+" отличен от года даты изменения "+Str(Year(Value))+". Игнорировать ? (выбранный план график будет сброшен)",mtWarning)=cmCancel: ^False; fi;
       Док=nil;
    fi;
 fi;
 Return True;
end;

Func Док_OnEnter(FieldName: String; Iter: Integer): logical;
var Rec: Record;
 if Дат=1.1.100: Message("Введите дату",mtError); Template.Field="Дат"; ^False; fi;
 Rec=OpenCardFile("РПО_ЗАЯВКА_ЗАКУП","Рег and not НеДейств and Справ='ПГ' and ДатаРег>=1.1."+Str(Year(Дат))+" and ДатаРег<1.1."+Str(Year(Дат)+1));
 if not Rec=nil:
    Док=Rec;
    Общ_Призн1=Док.Общ_Призн1;
    Общ_Призн2=Док.Общ_Призн2;
    ВзятьИнфо;
 fi;
 Return False;
end;

Func Осн_OnLookup(Sect: String; Row: Integer; Col: Integer; Cur: String): String;
var n:i;
 Template.HideEditor(False);
 ClearVariable(Buf);
 n=0;
 n=n+1; Buf[n]="Изменение более чем на 10% стоимости планируемых к приобретению товаров, работ, услуг, выявленные в результате подготовки к размещению конкретного заказа, вследствие чего невозможно размещение заказа на поставки товаров, выполнение работ, оказание услуг в соответствии с начальной (максимальной) ценой контракта, предусмотренной планом-графиком";
 n=n+1; Buf[n]="Изменение планируемых сроков приобретения товаров, работ, услуг, способа размещения заказа, срока исполнения контракта";
 n=n+1; Buf[n]="Отмена заказчиком, уполномоченным органом предусмотренного планом-графиком размещения заказа";
 n=n+1; Buf[n]="Образовавшаяся экономия от использования в текущем финансовом году бюджетных ассигнований в соответствии с законодательством Российской Федерации";
 n=n+1; Buf[n]="Возникновение обстоятельств, предвидеть которые на дату утверждения плана-графика было невозможно";
 n=n+1; Buf[n]="Выдача заказчику, уполномоченному органу предписания уполномоченного на осуществление контроля в сфере размещения заказов федерального органа исполнительной власти, органа исполнительной власти субъекта Российской Федерации, органа местного самоуправления об устранении нарушения законодательства Российской Федерации о размещении заказов в соответствии с законодательством Российской Федерации, в том числе об аннулировании торгов";
 n=Alternate("Основание внесения изменений",Buf);
 if not n=0:
    Осн=Buf[n];
 fi;
 Return Cur;
end;

Func Инфо_OnEnter(FieldName: String; Iter: Integer): logical;
 if not ИнфоRec=nil:
    OpenCardFile("ДОКУМЕНТЫ.ДОГОВОРПОСТ.ЗАЯВКА_ЗАКУП","",ИнфоRec);
    OpenBlank("ДТ.ПЛАН_ГРАФИК",ModalMode,ИнфоRec);
 fi;
 Return False;
end;
--Обработчики событий полей шаблона-----
--
--Обработчики событий объектов шаблона-----
Proc btnСохран_OnClick(Sender: String);
 EditorApply;
end;

Proc btnЗакрыть_OnClick(Sender: String);
 Close;
end;
--Обработчики событий объектов шаблона-----
--
--
--Обработчики событий шаблона -----
Proc OnRead;
 ВзятьИнфо;
end;

Func OnVerify: Logical;
 if Дат=1.1.100: Message("Введите дату",mtError); Template.Field="Дат"; ^False; fi;
 if Док=nil: Message("Выберите план-график",mtError); Template.Field="Док_"; ^False; fi;
 if Осн="": Message("Введите основание изменения",mtError); Template.Field="Осн"; ^False; fi;
 Return True;
end;
--Обработчики событий шаблона -----
--

Конец
