Имя: Пароль:
1C
1С v8
Список заказов.Отбор,заказан у поставщика
0 Asyai
 
21.11.12
14:25
Необходимо видеть сколько заказов в статусе "Заказан" по городам
http://s019.radikal.ru/i634/1211/25/d7ed273f0084.png
Но что-то не выходит и выдает общее кол-во и там и там.

Текст процедуры


Процедура ОбновитьКоличествоЗаказов()
     
      Запрос = Новый Запрос();
      Запрос.Текст ="ВЫБРАТЬ РАЗЛИЧНЫЕ
      |    КОЛИЧЕСТВО(РАЗЛИЧНЫЕ ИсторияСтатусовПоДокументамСрезПоследних.Заказ) КАК Заказ
      |ИЗ
      |    РегистрСведений.ИсторияСтатусовПоДокументам.СрезПоследних(, ) КАК ИсторияСтатусовПоДокументамСрезПоследних
      |ГДЕ
      |    ИсторияСтатусовПоДокументамСрезПоследних.Заказ.Автор В ИЕРАРХИИ(&ТекАвтор)

      |    И ВЫБОР
      |            КОГДА НЕ &СкрытыеЗаказы
      |                ТОГДА ИсторияСтатусовПоДокументамСрезПоследних.Заказ.СкрытьЗаказ = &СкрытыеЗаказы
      |            ИНАЧЕ ИсторияСтатусовПоДокументамСрезПоследних.Заказ.СкрытьЗаказ = &СкрытыеЗаказы
      |                    ИЛИ НЕ ИсторияСтатусовПоДокументамСрезПоследних.Заказ.СкрытьЗаказ = &СкрытыеЗаказы
      |        КОНЕЦ
      |    И ИсторияСтатусовПоДокументамСрезПоследних.Статус = ЗНАЧЕНИЕ(Перечисление.Статус.Заказан)";
     
     
      Запрос.УстановитьПараметр("СкрытыеЗаказы",ПоказатьСкрытыеЗаказы);
      Запрос.УстановитьПараметр("Город","Одесса");
     
      Запрос.УстановитьПараметр("ЗаГородом","Украина");
      Запрос.УстановитьПараметр("ТекАвтор",АвторШ);
     
      Выборка = Запрос.Выполнить().Выбрать();
      Если Выборка.Следующий() Тогда
          КоличествоЗаказов = Выборка.заказ;
      Иначе
          КоличествоЗаказов = 0;
      КонецЕсли;
1 Asyai
 
21.11.12
14:44
никто не поможет?(
2 Oleg_Kag
 
21.11.12
14:49
1) Вы выбрали общее количество запросом...
2) Не видим структуры регистра ИсторияСтатусовПоДокументам
3 Asyai
 
21.11.12
14:58
&НаСервере
  Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
     
      УчетнаяВалюта = константы.УчетнаяВалюта.Получить();
      ТекКурсЭл = ВалютаСервер.ПолучитьКурс(ТекущаяДата(),УчетнаяВалюта);
      ТекКурсБН = ТекКурсЭл + константы.КоэффициентДляБНКурса.Получить();
      //
     
      ////////////////////////////////// Монитор
      Элементы.ЗапрошлыйМесяц.ЦветТекста   = ЦветаСтиля.ЦветОтрицательногоЧисла;
      ДатаС = ТекущаяДата()-30*24*60*60 ; //
      ДатаПО = ТекущаяДата() ;
      Элементы.ДатаПо.Доступность = ложь;
      Элементы.ДатаС.Доступность  = Ложь;
     
      //
      ТекСклад = ПараметрыСеанса.ТекущийПользователь.Склад;
      ФизЛицо = ПараметрыСеанса.ТекущийПользователь.ФизЛицо;    
      Если   ФизЛицо.Пустая() тогда
          сообщить("Не заполнено у пользователя "+ПараметрыСеанса.ТекущийПользователь +" поле физ.лицо ! ");
          Отказ = истина;
      иначе
          АвторШ = ФизЛицо;
      Конецесли;
     
      Если не РольДоступна("Директор") и не РольДоступна("Оператор") тогда
          АвторФильтр  = АвторШ;
      Конецесли;    
     
      ///////////////////////// Прочее
      //
      Магазин1 = Справочники.Склады.НайтиПоКоду("2");
      Основной = Справочники.Склады.НайтиПоКоду("1");
      //
      Оператор1 = справочники.ФизЛица.НайтиПоКоду("000000002");
      ФизЛицоМагазин = справочники.ФизЛица.НайтиПоКоду("000000009");
     
      ДатаСЗП = текущаяДата();
      ДатаПоЗП = текущаяДата();
      Элементы.Склады.Заголовок = Магазин1;
      ВыбСклад = Магазин1;
      ВыбСкладНеподтвержденные =  Магазин1;
      Элементы.ВыбСкладНеподтвержденныеКнопка.Заголовок = ВыбСкладНеподтвержденные;
     
      ДатаСКасса = НачалоДня(текущаяДата());
      ДатаПоКасса = КонецДня(текущаяДата());
     
      ЦветТекстаКнопки = ЦветТекстаКнопки();
      ЦветОтрицательногоЧисла = ЦветОтрицательногоЧисла();

      //
      МенюКурьеров("");
     
      //Расчетные счета
      РасчетныйСчетВебМаниГрн = константы.КассаМаниГрн.Получить();
      РасчетныйСчетВебМаниДоллар = константы.КассаМаниДоллар.Получить();
      РасчетныйСчетПриват = константы.КассаПриват.Получить();
      РасчетныйСчетВиза = константы.КассаВиза.Получить();
      РасчетныйСчетОТП = справочники.Кассы.НайтиПоКоду("000000035");
     
      Ответы.Параметры.УстановитьЗначениеПараметра("ТекАвтор",ФизЛицо);
      //
      Вопросы.Параметры.УстановитьЗначениеПараметра("ТекАвтор",ФизЛицо);
     
     
      СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("Магазин1",Магазин1);
      СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("Основной",Основной);
     
      БизнесПроцессПоискТовара.Параметры.УстановитьЗначениеПараметра("ТекПометка",ложь);
      БизнесПроцессПоискТовара.Параметры.УстановитьЗначениеПараметра("ТекДата",НачалоДня(ТекущаяДата()));
     
      //Одесса
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("Магазин1",Магазин1);
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("Основной",Основной);
     
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("ВозвратОтКурьера",Перечисления.Статус.ВозвратОтКурьера);
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("ОжидаетЗадаток",Перечисления.Статус.ОжидаетЗадаток);
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("Заказ",Перечисления.Статус.Заказан);
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("ПолучитьЗадаток",Перечисления.Статус.ПолучитьЗадаток);
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("ЗадатокВернули",Перечисления.Статус.ЗадатокВернули);
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("ЗадатокПринят",Перечисления.Статус.ЗадатокПринят);
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("Самовывоз",Перечисления.Статус.ОжидаетСамовывоз);
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("Отмена",Перечисления.Статус.Отмена);
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("Продан",Перечисления.Статус.Продан);
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("Доставлен",Перечисления.Статус.Доставлен);
     
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("СобиратьНаДоставку",Перечисления.Статус.СобиратьНаДоставку);
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("ОтданКурьеру",Перечисления.Статус.ОтданКурьеру);
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("ГотовОжидаетКУрьера",Перечисления.Статус.ГотовОжидаетКурьера);
     
     
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("ТекАвтор",АвторФильтр);
      СписокЗаказов.Параметры.УстановитьЗначениеПараметра("СкрытыеЗаказы",ложь);

     
      ///Украина
     
      СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("ЗаказанУкраина",Перечисления.Статус.ЗаказанУкраина);
      СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("ВозвратОтКурьера",Перечисления.Статус.ВозвратОтКурьера);
      СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("ОжидаетОплатуУкраина",Перечисления.Статус.ОжидаетОплатуУкраина);
      СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("ОжидаетВывозаСКурьерскойСлужбы",Перечисления.Статус.ОжидаетВывозаСКурьерскойСлужбы);
      СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("ОплаченСобиратьНаДоставку",Перечисления.Статус.ОплаченСобиратьНаДоставку);
      СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("ОтправляемНаложеннымСУчетомЗадатка",Перечисления.Статус.ОтправляемНаложеннымСУчетомЗадатка);
      СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("СобиратьНаОтправкуУкраина",Перечисления.Статус.СобиратьНаОтправкуУкраина);
      СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("ОтданДляОтправкиУкраина",Перечисления.Статус.ОтданДляОтправкиУкраина);
      СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("ЗаказЗабралиНаложПлатежЕдетОбратно",Перечисления.Статус.ЗаказЗабралиНаложПлатежЕдетОбратно);
     
      СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("ОтменаУкраина",Перечисления.Статус.ОтменаУкраина);
      СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("Отмена",Перечисления.Статус.Отмена);
      СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("ОтменаИзУкраиныВОдессу",Перечисления.Статус.ОтменаИзУкраиныВОдессу);
      СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("ПроданОтправлен",Перечисления.Статус.ПроданОтправлен);
     
       СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("ТекАвтор",АвторФильтр);
       
       СписокЗаказовУкраина.Параметры.УстановитьЗначениеПараметра("СкрытыеЗаказы",ложь);

      ПеремТекущаяСтраница = "Бонусы";
  КонецПроцедуры
 
  &НаСервере  
  Функция ЦветОтрицательногоЧисла()
      Возврат ЦветаСтиля.ЦветОтрицательногоЧисла;
  КонецФункции
 
  &НаСервере
  Функция ЦветТекстаКнопки()
      Возврат ЦветаСтиля.ЦветТекстаКнопки;
  КонецФункции
 
  &НаКлиенте
  Процедура ВариантПериодПриИзменении(Элемент,реж)
     
      ТекСтраница  = Элементы.СтраницыГл.ТекущаяСтраница.Имя;
      ТекСтраница2 = Элементы.СтраницыУкраинаОдесса.ТекущаяСтраница.Имя;
     
      Если не ТекСтраница = "БезНалСтраницы" тогда
         
          Если  реж = "ЗапрошлыйМесяц" тогда
              Период_Тек = реж;
          Иначе
              Период_Тек = Элемент.Имя;
          Конецесли;
         
          Элементы.Сегодня.ЦветТекста = ЦветТекстаКнопки;
          Элементы.Вчера.ЦветТекста = ЦветТекстаКнопки;
          Элементы.ПоЗавчера.ЦветТекста = ЦветТекстаКнопки;
          Элементы.ЗапрошлуюНеделю.ЦветТекста = ЦветТекстаКнопки;
          Элементы.ПроизвольныйПериод.ЦветТекста = ЦветТекстаКнопки;
          Элементы.ЗапрошлыйМесяц.ЦветТекста = ЦветТекстаКнопки;
         
         
          Если Период_Тек ="Сегодня" тогда
              ДатаС = ТекущаяДата() ;
              ДатаПО = ТекущаяДата() ;
             
          ИначеЕсли  Период_Тек ="Вчера" тогда
              ДатаС = ТекущаяДата()-1*24*60*60 ; //вчера
              ДатаПО = ТекущаяДата()-1*24*60*60 ;
             
          ИначеЕсли  Период_Тек ="ПоЗавчера" тогда
              ДатаС = ТекущаяДата()-2*24*60*60 ; //
              ДатаПО = ТекущаяДата() -2*24*60*60 ; //                    
             
          ИначеЕсли  Период_Тек ="ЗаПрошлуюНеделю" тогда
              ДатаС = ТекущаяДата()-7*24*60*60 ; //
              ДатаПО = ТекущаяДата() ;
             
          ИначеЕсли  Период_Тек ="ПроизвольныйПериод" тогда
              Элементы.ДатаПо.Доступность = истина;
              Элементы.ДатаС.Доступность = истина;
             
          ИначеЕсли  Период_Тек ="ЗапрошлыйМесяц" тогда
              ДатаС = ТекущаяДата()-30*24*60*60 ; //
              ДатаПО = ТекущаяДата() ;
             
          ИначеЕсли  Период_Тек ="ЗаПрошлыеПолгода" тогда
              ДатаС = ТекущаяДата()-180*24*60*60 ; //
              ДатаПО = ТекущаяДата() ;
              // красим
             
          Конецесли;
         
          Элементы[Период_Тек].ЦветТекста = ЦветОтрицательногоЧисла;
          //Период
          ДатаС = НачалоДня(ДатаС);
          ДатаПО = КонецДня(ДатаПО);
         
          Флг = 0;
          Если ТекСтраница2  = "СтраницаУкраина" тогда
              НовыйЭлементОтбора = СписокЗаказовУкраина.Отбор.Элементы;
          иначе
              НовыйЭлементОтбора = СписокЗаказов.Отбор.Элементы;
          Конецесли;
          //ДатаС
          Для каждого стр из  НовыйЭлементОтбора цикл
              Если не СокрЛП(стр.ЛевоеЗначение) = "ЗаказДата" тогда
                  продолжить;
              Конецесли;
              Флг =  Флг +1;
              стр.Использование = истина;
              стр.ПравоеЗначение = ДатаС ;
              стр.ВидСравнения = ВидСравненияКомпоновкиДанных.БольшеИлиРавно;
          КонецЦикла;
         
          Если  Флг = 0 тогда
             
              Если ТекСтраница2  = "СтраницаУкраина" тогда
                  НовыйЭлементОтбора = СписокЗаказовУкраина.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
              иначе
                   НовыйЭлементОтбора = СписокЗаказов.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
              Конецесли;
             
              ПолеОтбора = Новый ПолеКомпоновкиДанных("ЗаказДата");
              НовыйЭлементОтбора.ЛевоеЗначение = ПолеОтбора;
              НовыйЭлементОтбора.Использование = Истина;
              НовыйЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.БольшеИлиРавно;
              НовыйЭлементОтбора.ПравоеЗначение = ДатаС;
             
          КонецЕсли;
         
          //ДатаПо
          Флг = 0;
          Если ТекСтраница2  = "СтраницаУкраина" тогда
              НовыйЭлементОтбора = СписокЗаказовУкраина.Отбор.Элементы;
          иначе
              НовыйЭлементОтбора = СписокЗаказов.Отбор.Элементы;
          Конецесли;
         
         
          Для каждого стр из  НовыйЭлементОтбора цикл
              Если не СокрЛП(стр.ЛевоеЗначение) = "ДатаПо" тогда
                  продолжить;
              Конецесли;
              Флг =  Флг +1;
              стр.Использование = истина;
              стр.ПравоеЗначение = ДатаПо ;
              стр.ВидСравнения = ВидСравненияКомпоновкиДанных.МеньшеИлиРавно;
          КонецЦикла;
         
          Если  Флг = 0 тогда
             
              Если ТекСтраница2  = "СтраницаУкраина" тогда
                  НовыйЭлементОтбора = СписокЗаказовУкраина.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
              иначе
                  НовыйЭлементОтбора = СписокЗаказов.Отбор.Элементы.Добавить(Тип("ЭлементОтбораКомпоновкиДанных"));
              Конецесли;
             
              ПолеОтбора = Новый ПолеКомпоновкиДанных("ДатаПо");
              НовыйЭлементОтбора.ЛевоеЗначение = ПолеОтбора;
              НовыйЭлементОтбора.Использование = Истина;
              НовыйЭлементОтбора.ВидСравнения = ВидСравненияКомпоновкиДанных.МеньшеИлиРавно;
              НовыйЭлементОтбора.ПравоеЗначение = ДатаПо;
             
          КонецЕсли;
         
      иначе
          ВариантПериодПриИзмененииКасса(Элемент,реж);
      Конецесли;
  КонецПроцедуры
 
  &НаКлиенте
  Процедура ВариантПериодПриИзмененииКасса(Элемент,реж)
     
      ТекЭлемент =  этаформа.ТекущийЭлемент.Имя ;
      СимвПослд = Прав(ТекЭлемент,1);
     
      ТекКассаПо = "ДатаПоКасса"+СимвПослд;
      ТекКассаС = "ДатаСКасса"+СимвПослд;
     
      Элементы[ТекКассаПо].Доступность = ложь;
      Элементы[ТекКассаС].Доступность = Ложь;
     
      ЦветТекстаКнопки = ЦветТекстаКнопки();
      ЦветОтрицательногоЧисла = ЦветОтрицательногоЧисла();
     
      ТекСегодня = "Сегодня"+СимвПослд;
      ТекВчера = "Вчера"+СимвПослд;
      ТекПоЗавчера = "ПоЗавчера"+СимвПослд;
      ТекЗапрошлуюНеделю = "ЗапрошлуюНеделю"+СимвПослд;
      ТекЗапрошлыйМесяц = "ЗапрошлыйМесяц"+СимвПослд;
      ТекПроизвольныйПериод = "ПроизвольныйПериод"+СимвПослд;
     
      Элементы[ТекСегодня].ЦветТекста = ЦветТекстаКнопки;
      Элементы[ТекВчера].ЦветТекста = ЦветТекстаКнопки;
      Элементы[ТекПоЗавчера].ЦветТекста = ЦветТекстаКнопки;
      Элементы[ТекЗапрошлуюНеделю].ЦветТекста = ЦветТекстаКнопки;
      Элементы[ТекЗапрошлыйМесяц].ЦветТекста = ЦветТекстаКнопки;
      Элементы[ТекПроизвольныйПериод].ЦветТекста = ЦветТекстаКнопки;
     
      Если  реж = "Сегодня" тогда
          Период_Тек = ТекСегодня;
      Иначе
          Период_Тек = ТекЭлемент;
      Конецесли;
     
      Если ТекЭлемент ="Сегодня"+СимвПослд тогда
          ДатаСКасса = ТекущаяДата() ;
          ДатаПоКасса = ТекущаяДата() ;
         
      ИначеЕсли  ТекЭлемент ="Вчера"+СимвПослд тогда
          ДатаСКасса = ТекущаяДата()-1*24*60*60 ; //вчера
          ДатаПоКасса = ТекущаяДата()-1*24*60*60 ;
         
      ИначеЕсли  ТекЭлемент ="ПоЗавчера"+СимвПослд тогда
          ДатаСКасса = ТекущаяДата()-2*24*60*60 ; //
          ДатаПоКасса = ТекущаяДата() -2*24*60*60 ; //                    
         
      ИначеЕсли  ТекЭлемент ="ЗаПрошлуюНеделю"+СимвПослд тогда
          ДатаСКасса = ТекущаяДата()-7*24*60*60 ; //
          ДатаПоКасса = ТекущаяДата() ;
         
      ИначеЕсли  ТекЭлемент ="ПроизвольныйПериод" +СимвПослд тогда
          Элементы[ТекКассаПо].Доступность = истина;
          Элементы[ТекКассаС].Доступность = истина;
         
      ИначеЕсли  ТекЭлемент ="ЗапрошлыйМесяц"+СимвПослд тогда
          ДатаСКасса = ТекущаяДата()-30*24*60*60 ; //
          ДатаПоКасса = ТекущаяДата() ;
         
      ИначеЕсли  ТекЭлемент ="ЗаПрошлыеПолгода"+СимвПослд тогда
          ДатаСКасса = ТекущаяДата()-180*24*60*60 ; //
          ДатаПоКасса = ТекущаяДата() ;
          // красим
         
      Конецесли;
      Элементы[ТекЭлемент].ЦветТекста = ЦветОтрицательногоЧисла;
      РежКасса  = СимвПослд;
      Касса(СимвПослд);    
  КонецПроцедуры
 
  &НаКлиенте
  Процедура ПриОткрытии(Отказ)
       ВариантПериодПриИзменении(,"ЗапрошлыйМесяц");
     
      приоткрытииФормы = истина;
      ФилтрПостатусам("","Заказы");
      ФилтрПостатусамУкраина("","ЗаказыУкраины");
     
      приоткрытииФормы = ложь;
     
      Если не ВРег(ИмяПользователя()) = "ОПЕРАТОР" и не ВРег(ИмяПользователя()) = "ДИРЕКТОР" тогда
          Элементы.ФизЛица.Видимость = ложь;
      Конецесли;
     
      открытьформу("ОбщаяФорма.КурсДня",,ЭтаФорма);
     
     
      элементы.Информация.Картинка =  Новый Картинка();
      элементы.Информация2.Картинка = библиотекаКартинок.СообщениеИнформация;
      элементы.Информация.Отображение = ОтображениеКнопки.Текст;
      элементы.Информация.Заголовок = "Нет новых сообщений";
      ОбновитьКоличествоЗаказов();
     
  КонецПроцедуры
 
  &НаКлиенте
  Процедура ПриЗакрытии()
      отказ = ложь;
      // Вставить содержимое обработчика.
      Если не отказ тогда
          // состояние("Черновик сохранен ! " ,,,БиблиотекаКартинок.СохранитьФайл);
      Конецесли;
     
  КонецПроцедуры
 
  &НаКлиенте
  Процедура МеняемКурс(Команда)
      // Вставить содержимое обработчика.
      Количество = ТекКурсЭл;
      Если не ВвестиЧисло(Количество, "Введите новый курс", 10, 2) Тогда
          // обработка введенного количества
          возврат;
      КонецЕсли;
      УстановитьНоывыйКурс(Количество);
      Состояние("Новый курс установлен !",,,БиблиотекаКартинок.Информация);
  КонецПроцедуры
 
  &НаСервере
  Процедура УстановитьНоывыйКурс(НовыйКурс)
      РегВалют = РегистрыСведений.КурсыВалют.СоздатьМенеджерЗаписи();    
      РегВалют.Активность = истина;
      РегВалют.Валюта = Константы.УчетнаяВалюта.Получить();
      РегВалют.Курс = НовыйКурс;
      РегВалют.Период = ТекущаяДата();
      Попытка
          РегВалют.Записать();
      исключение
          Сообщить(описаниеОшибки());
      КонецПопытки;
      ТекКурсЭл = ВалютаСервер.ПолучитьКурс(ТекущаяДата(),УчетнаяВалюта);
      ТекКурсБН = ТекКурсЭл + константы.КоэффициентДляБНКурса.Получить();
  КонецПРоцедуры
 
  &НаКлиенте
  Процедура НовыйЗаказ(Команда)
      ВидПодбора = Истина;
      ОдессаУкраина = "";
      ОткрытьФормуМодально("Документ.Заказы.форма.ОдессаУкраина",,этаФорма);
      Если ЗначениеЗаполнено(ОдессаУкраина) тогда
          Структ = Новый Структура;
          Структ.Вставить("ОдессаУкраина",ОдессаУкраина);
          Структ.Вставить("ВидимостьТретьгоОкна",истина);
          открытьформу("ОбщаяФорма.ФормаПодбора",Структ,этаФорма);
      Конецесли;
     
  КонецПроцедуры
 
  &НаСервере
  Процедура ЗагрузитьЧерновик(отказ)
      Черновик ="";
      Запрос = Новый Запрос;
      Запрос.УстановитьПараметр("ДатаЧерновик",ДатаЧерновик);
      Запрос.УстановитьПараметр("Автор",АвторШ);
     
      Запрос.Текст =
      "ВЫБРАТЬ
      |    ЧерновикСрезПоследних.Период,
      |    ЧерновикСрезПоследних.Черновик
      |ИЗ
      |    РегистрСведений.Черновик.СрезПоследних(&ДатаЧерновик, Автор = &Автор) КАК ЧерновикСрезПоследних";
     
      Результат = Запрос.Выполнить();
     
      ВыборкаДетальныеЗаписи = Результат.Выбрать();
     
      Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
          если  ДатаЧерновик = ВыборкаДетальныеЗаписи.период тогда
              // Вставить обработку выборки ВыборкаДетальныеЗаписи
              Черновик =  ВыборкаДетальныеЗаписи.Черновик.Получить();
              отказ = ложь;
          Иначе
              отказ = истина;
          Конецесли;
      КонецЦикла;
     
  КонецПроцедуры
 
  &НаКлиенте
  Процедура СтраницыГлПриСменеСтраницы(Элемент, ТекущаяСтраница)
     
      Если  ТекущаяСтраница.Имя = "БезНалСтраницы" тогда
          ВариантПериодПриИзмененииКасса("","Сегодня");
      Конецесли;
  КонецПроцедуры
 
  &НаКлиенте
  Процедура СписокЗаказыПриАктивизацииЯчейки(Элемент)  
      // Вставить содержимое обработчика.
     
      Если Элемент.ТекущийЭлемент.Имя = "Статус" тогда
          Подсказка ="Заказ: "+Элемент.ТекущиеДанные.номерЗаказа+символы.ПС+"Товар: "+ Элемент.ТекущиеДанные.Товар+символы.ПС+"История: "+Элемент.ТекущиеДанные.КтоПоследнийМенялСтатус;
          Состояние (Подсказка,,,БиблиотекаКартинок.Информация);    
      ИначеЕсли  Элемент.ТекущийЭлемент.Имя = "НомерЗаказа" тогда
          Если  Элемент.ТекущиеДанные = неопределено тогда
              возврат;
          Конецесли;
      КонецЕсли;
     
     
  КонецПроцедуры
 
  &НаКлиенте
  Процедура ВклФильтрПоАвтору(Команда)
      // Вставить содержимое обработчика.
     
      СостояниеКнопкиУстАвтора = Элементы.ФильтрАвтора.Пометка;
      СостояниеКнопкиНазАвтора = Элементы.НазначитьАвтора.Пометка;
     
      Если  не Элементы.АвторФильтр.Видимость тогда
          Элементы.АвторФильтр.Видимость = истина;
          Элементы.ФильтрАвтора.Пометка = Истина;
          Элементы.ФильтрАвтора.ЦветФона = ФонШапкиОтчета();
          Элементы.НазначитьАвтора.Видимость = истина;
      ИначеЕсли  СостояниеКнопкиУстАвтора тогда
          Элементы.АвторФильтр.Видимость = ложь;
          Элементы.НазначитьАвтора.Видимость = ложь;
          Элементы.ФильтрАвтора.Пометка = Ложь;
          Элементы.ФильтрАвтора.ЦветФона = ЦветФонаКнопки();
      КонецЕсли
  КонецПроцедуры
 
  &НаСервере
  Функция ФонШапкиОтчета()
      Возврат ЦветаСтиля.ЦветЛинииОтчета;
  КонецФункции
 
  &НаСервере
  Функция ЦветФонаКнопки()
      Возврат ЦветаСтиля.ЦветФонаКнопки;
  КонецФункции
 
  &НаКлиенте
  Процедура ПодтверждениеНазначениеАвтора(Команда)
      //// Вставить содержимое обработчика.
      //ТекСтр          = Элементы.СписокЗаказы.ТекущиеДанные;
      //проведен        = ложь;
      //Если ТекСтр = неопределено тогда
      //    Сообщить("Не выбран заказ !");
      //    возврат;
      //Конецесли;
      //Если   АвторФильтр.Пустая() тогда
      //    Сообщить("Значение автор пустое !");
      //    возврат;
      //КонецЕсли;
      //
      //Если  ТекСтр.автор =  АвторФильтр тогда
      //    Сообщить("Авторы одинаковые !");
      //    возврат;
      //КонецЕсли;
      //
      //Режим = РежимДиалогаВопрос.ДаНет;
      //Текст = "Текущему заказу будет назначен автор "+АвторФильтр+";
      //|        Продолжить выполнение операции ?";
      //Ответ = Вопрос(Текст, Режим, 0);
      //Если Ответ = КодВозвратаДиалога.Нет Тогда
      //    Возврат;
      //КонецЕсли;
      //
      //ПоискДокАвтор (ТекСтр,АвторФильтр,проведен);
      ////результат
      //Если проведен тогда
      //    состояние("Заказу назначен автор " +АвторФильтр+ " !",,,БиблиотекаКартинок.Информация);
      //Иначе
      //    Сообщить("Заказу не назначен автор " +АвторФильтр);
      //Конецесли;
      ////
      //Элементы.СписокЗаказы.Обновить();
     
  КонецПроцедуры
 
  &НаСервере
  Процедура ПоискДокАвтор (ТекСтр,АвторФильтр,проведен)
     
      Док = Документы.Заказы.НайтиПоНомеру(ТекСтр.НомерДокумента,ТекСтр.Период);
      Если не ЗначениеЗаполнено(Док)тогда
          возврат;
      Конецесли;
      Об = Док.ПолучитьОбъект();
      ТЧ = Об.Товары;
     
      НайденнаяСтрока = ТЧ.Найти(ТекСтр.НомерЗаказа, "НомерЗаказа");
     
      Если НайденнаяСтрока = Неопределено Тогда
          Сообщить("Заказу не назначен автор " +АвторФильтр);
          проведен = Ложь;
      Иначе
          НайденнаяСтрока.автор = АвторФильтр;
      КонецЕсли;    
      Попытка
          Об.Записать(РежимЗаписиДокумента.Проведение);
          проведен = истина;
      Исключение
          Сообщить("Заказу не назначен автор !" +АвторФильтр);
          проведен = ложь;
      КонецПОпытки;
     
  КонецПРОцедуры
 
  &НаКлиенте
  Процедура НазначитьАвтора(Команда)
      // Вставить содержимое обработчика.
      СостояниеКнопкиНазАвтора = Элементы.НазначитьАвтора.Пометка;
     
      Если  не Элементы.ОК.Видимость тогда
          Элементы.НазначитьАвтора.Пометка = истина;
          Элементы.НазначитьАвтора.ЦветФона = ФонШапкиОтчета();
          Элементы.ОК.Видимость = истина;
      Иначе
          Элементы.НазначитьАвтора.Пометка = ложь;
          Элементы.НазначитьАвтора.ЦветФона = ЦветФонаКнопки();
          Элементы.ОК.Видимость = ложь;
      КонецЕсли ;
     
     
  КонецПроцедуры
 
  &НаСервере
  Функция РольДиректор() экспорт
      Если  РольДоступна("Директор") Тогда
          возврат  истина;
      иначе
          возврат  ложь;
      КонецЕсли;
  КонецФункции
 
  &НаКлиенте
  Процедура ВнешнееСобытие(Источник, Событие, Данные)
      // Объект = Новый ("Addin.Events");
      //Вставить содержимое обработчика
      открытьформу("ОбщаяФорма.ВыполнитьДествие",,ЭтаФорма);
      //    Если ЛЕВ(Источник,6)="EVENTS" Тогда
      //    Если (Событие="МЫШЬ")И (Объект.Результат.Количество()>0) Тогда
      //        СтрокаСостояния=Данные+" по координатам X:"+Объект.Результат.X+" Y:"+Объект.Результат.Y+". ";
      //        Если Объект.Результат.левый_Контрол Тогда
      //            СтрокаСостояния=СтрокаСостояния+ " Левый контрол зажат";
      //        КонецЕсли;
      //        Если Объект.Результат.Правый_Контрол Тогда
      //            СтрокаСостояния=СтрокаСостояния+ " Правый контрол зажат";
      //        КонецЕсли;
      //        Если Объект.Результат.левый_Шифт Тогда
      //            СтрокаСостояния=СтрокаСостояния+ " Левый шифт зажат";
      //        КонецЕсли;
      //        Если Объект.Результат.Правый_Шифт Тогда
      //            СтрокаСостояния=СтрокаСостояния+ " Правый шифт зажат";
      //        КонецЕсли;
      //        Если Объект.Результат.левый_Альт Тогда
      //            СтрокаСостояния=СтрокаСостояния+ " Левый альт зажат";
      //        КонецЕсли;
      //        Если Объект.Результат.Правый_Альт Тогда
      //            СтрокаСостояния=СтрокаСостояния+ " Правый альт зажат";
      //        КонецЕсли;
      //        Сообщить(СтрокаСостояния);
      //    КонецЕсли;
      //    
      //    Если (Событие="КЛАВИАТУРА")И (Объект.Результат.Количество()>0) Тогда
      //        СтрокаСостояния=Данные+" "+Объект.Результат.Имя_Клавиши+". Код клавиши:"+Объект.Результат.Код_Клавиши;
      //        Если Объект.Результат.левый_Контрол Тогда
      //            СтрокаСостояния=СтрокаСостояния+ " Левый контрол зажат";
      //        КонецЕсли;
      //        Если Объект.Результат.Правый_Контрол Тогда
      //            СтрокаСостояния=СтрокаСостояния+ " Правый контрол зажат";
      //        КонецЕсли;
      //        Если Объект.Результат.левый_Шифт Тогда
      //            СтрокаСостояния=СтрокаСостояния+ " Левый шифт зажат";
      //        КонецЕсли;
      //        Если Объект.Результат.Правый_Шифт Тогда
      //            СтрокаСостояния=СтрокаСостояния+ " Правый шифт зажат";
      //        КонецЕсли;
      //        Если Объект.Результат.левый_Альт Тогда
      //            СтрокаСостояния=СтрокаСостояния+ " Левый альт зажат";
      //        КонецЕсли;
      //        Если Объект.Результат.Правый_Альт Тогда
      //            СтрокаСостояния=СтрокаСостояния+ " Правый альт зажат";
      //        КонецЕсли;
      //        Если Объект.Результат.Клавиша_Перехвачена=Истина Тогда
      //            СтрокаСостояния=СтрокаСостояния+". Клавиша перехвачена";
      //        КонецЕсли;
      //        
      //        Сообщить(СтрокаСостояния);
      //    КонецЕсли;
      //    
      //    Если (Событие="ПРИЛОЖЕНИЕ") Тогда
      //        Сообщить("Выполнена "+Данные+" приложения");
      //    КонецЕсли;
      //    
      //КонецЕсли;
     
  КонецПроцедуры
 
  &НаСервере
  Процедура ПараметрыСеансаГл(глНомер)
      ПараметрыСеанса.ГлНомер = глНомер;
  КонецПроцедуры
 
  &НаКлиенте
  Процедура ПриходТовара(Команда)
      // Вставить содержимое обработчика.
      ТекСтр = Элементы.СписокЗаказы.ТекущиеДанные;
      П = Новый Структура("ТекСтр", ТекСтр);
     
      ОткрытьФорму("Документ.ПриходнаяНакладная.ФормаОбъекта",П);
  КонецПроцедуры
 
  &НаКлиенте
  Процедура НачалоРаботы(Команда)
      открытьформу("ОбщаяФорма.НачалоРаботы",,ЭтаФорма);
  КонецПроцедуры
 
  &НаКлиенте
  Процедура  ОбновитьСписокЗаказов()
          элементы.СписокЗаказов.Обновить();
  КонецПроцедуры
 
  //&НаСервере
  //Процедура  ПолучитьСписокЗаказов()///*********************************************************************************************
  //    
  //    Запрос = Новый Запрос;
  //    Запрос.Текст =
  //    "ВЫБРАТЬ РАЗЛИЧНЫЕ
  //    |    ИсторияСтатусовПоДокументамСрезПоследних.Заказ.Дата КАК Период,
  //    |    ИсторияСтатусовПоДокументамСрезПоследних.Заказ.Автор КАК Автор,
  //    |    ЗаказыТовары.Количество КАК Количество,
  //    |    ИсторияСтатусовПоДокументамСрезПоследних.Статус КАК Статус,
  //    |    ИсторияСтатусовПоДокументамСрезПоследних.СтатусФакт КАК СтатусФакт,
  //    |    ИсторияСтатусовПоДокументамСрезПоследних.ЧислоДляКартинки,
  //    |    ИсторияСтатусовПоДокументамСрезПоследних.НомерЗаказа,
  //    |    ИсторияСтатусовПоДокументамСрезПоследних.НомерДокумента,
  //    |    ИсторияСтатусовПоДокументамСрезПоследних.Заказ.Примечание КАК Примечание,
  //    |    ИсторияСтатусовПоДокументамСрезПоследних.Заказ.АдресДоставки КАК АдресДоставки,
  //    |    ЗаказыТовары.Ссылка.ТелКлиента,
  //    |    ИсторияСтатусовПоДокументамСрезПоследних.Заказ.СамовывозДоставка КАК СамовывозДоставка,
  //    |    ЗаказыТовары.ИтогоСтрока,
  //    |    ЗаказыТовары.Цена,
  //    |    ЗаказыТовары.ЦенаUSD,
  //    |    ИсторияСтатусовПоДокументамСрезПоследних.ДатаПродажи КАК ДатаПродажи,
  //    |    ИсторияСтатусовПоДокументамСрезПоследних.КтоПоследнийМенялСтатус,
  //    |    ЗаказыТовары.Себестоимость,
  //    |    ВЫБОР
  //    |        КОГДА (НЕ ИсторияСтатусовПоДокументамСрезПоследних.Себестоимость = 0)
  //    |            ТОГДА ИсторияСтатусовПоДокументамСрезПоследних.СуммаУчетн - ИсторияСтатусовПоДокументамСрезПоследних.Себестои
4 Asyai
 
21.11.12
14:59
ссори не то вставила
5 Asyai
 
21.11.12
15:47
Может кто-то зайдет ко мне и глянет если не сложно?
Оптимист верит, что мы живем в лучшем из миров. Пессимист боится, что так оно и есть.