Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
27 сен 2024, 23:18

Помогите сделать сортировку по отгрузке

Автор ADRENALIN1986, 22 янв 2011, 14:52

0 Пользователей и 1 гость просматривают эту тему.

ADRENALIN1986

Извеняюсь может быть за такой странный вопрос но это очень нужно мне помогите , имеется книга покупок  код ее приведен ниже , мне нужно сделать сортировку по отгрузке, скажите где изменить код, либо что нужно дополнить :(:


////////////////////////////////////////////////////////////////////////////////
// ПЕРЕМЕННЫЕ МОДУЛЯ
//

Перем Расшифровка;
Перем Обновить;
Перем Таб;
Перем ТекущийВариантФормирования;

////////////////////////////////////////////////////////////////////////////////
// ПРОЦЕДУРЫ И ФУНКЦИИ МОДУЛЯ
//

//*****************************************************************************
Функция РасшифровкаОбновить(Обновить)
   
   Расшифровка.Установить("Обновить", Обновить);
   Возврат Расшифровка;
   
КонецФункции

//******************************************************************************
// СписокНомеровГТД(Док)
//
// Параментры:
//  Док - Документ. Документ, содержащий в табличной части реквизиты "Страна
//        происхождения" и "Номер ГТД".
//
// Возвращаемое значение:
//  Строка - Страны происхождения и номера ГТД.
//
// Описание:
//  Формирует строку для заполнения графы "Страна происхождения, номер ГТД".
//
Функция СписокНомеровГТД(Док)
   
   Если Док.Выбран() = 0 Тогда
   ИначеЕсли (Док.Вид() = "СчетФактураПолученный") или
           (Док.Вид() = "ПоступлениеТоваров") Тогда
   
      СписокГТД = СоздатьОбъект("СписокЗначений");
      Док.ВыбратьСтроки();
      Пока Док.ПолучитьСтроку() = 1 Цикл
         ГТД = ?(ПустоеЗначение(Док.ГТД) = 0, СокрЛП(Док.Товар.СтранаПроисхождения) +
            " " + Док.ГТД, "");
         Если СписокГТД.НайтиЗначение(ГТД) = 0 Тогда
             СписокГТД.ДобавитьЗначение(ГТД);
         КонецЕсли;
      КонецЦикла;
      ГТД = "";
      Если СписокГТД.РазмерСписка() > 0 Тогда
         Для а = 1 по СписокГТД.РазмерСписка() Цикл
            ГТД = ГТД + ?(ГТД = "", "", ", ") + СписокГТД.ПолучитьЗначение(а);
         КонецЦикла;
      КонецЕсли;
      Возврат ГТД;
   КонецЕсли;
   Возврат "";
   
КонецФункции // СписокНомеровГТД()

//*****************************************************************************
Функция Наименование(Продавец)
   
   Если ПустаяСтрока(Продавец.ПолнНаименование) = 1 Тогда
      Возврат Продавец.Наименование;
   Иначе
      Возврат Продавец.ПолнНаименование;   
   КонецЕсли;

КонецФункции

//*****************************************************************************
Функция Пересчет(Док, Сумма)
   
   ЦеныВДокументе = 1; // в рублях
   Если Док.Договор.Выбран() = 1 Тогда
      Если Док.Договор.ОплатаДоговора = 2 Тогда
          ЦеныВДокументе = 2; // в валюте
           Кратность =  Док.Договор.ВалютаДоговора.Кратность.Получить(Док.ДатаДок);
         Кратность = ?(Кратность = 0, 1, Кратность);
      КонецЕсли;
   КонецЕсли;
   
   Если ЦеныВДокументе = 2 Тогда
       Возврат Сумма*Док.Курс/Кратность;
      
   Иначе
      Возврат Сумма;
   КонецЕсли;
   
КонецФункции // Пересчет()

//*****************************************************************************
// УправлениеДиалогом()
//
// Вызывается из формул элементов диалога:
//  Флаг СтандартнаяФорма.
//
// Описание:
//  Процедура управляет составом параметров отбора документов в зависимости от
// выбранного режима формирования отчета
//
Процедура УправлениеДиалогом()
   
   Если СтандартнаяФорма = 1 Тогда
       Форма.ИспользоватьСлой("Основной, Информация", 2);
      
   Иначе
      Если ВариантФормирования = 1 Тогда
          Форма.ИспользоватьСлой("Основной, Отбор, КоррСчет", 2);
      
      Иначе
         Форма.ИспользоватьСлой("Основной, Отбор", 2);
      КонецЕсли;
   КонецЕсли;
   
КонецПроцедуры // УправлениеДиалогом()

//*****************************************************************************
Процедура КнигаПокупок()
   
   ТабОтчета = СоздатьОбъект("ТаблицаЗначений");
   ГруппироватьПоКонтрагентам = 0;
   Таб.ИсходнаяТаблица("КнигаПокупок");
   Таб.ИспользоватьФормат("Ч-15.2-");
      
   УстановленныйОтбор = "";
   Если СтандартнаяФорма = 0 Тогда
      Если ВыбКонтрагент.Выбран() = 1 Тогда
          УстановленныйОтбор = "Установлен отбор по контрагенту: "+СокрЛП(ВыбКонтрагент.Наименование);
      КонецЕсли;
      
      Если КоррСчет.Выбран() = 1 Тогда
          УстановленныйОтбор = УстановленныйОтбор +
            ?(УстановленныйОтбор = "", "Установлен отбор по счету: ", "; по счету: ") +
            СокрЛП(КоррСчет.Код);
      КонецЕсли;
      ТекстВШапке = "";
      
   Иначе
      ТекстВШапке = "Приложение N 2
                      |к Правилам ведения журнала учета полученных и выставленных счетов-фактур,
                      |книг покупок и книг продаж при расчетах по налогу на добавленную стоимость";
   КонецЕсли;
   Таб.ВывестиСекцию("Шапка");

   ТекстЗапроса = "Период с ДатаНачала по ДатаКонца;
      |ОбрабатыватьДокументы Все;
      |Обрабатывать НеПомеченныеНаУдаление;
      |Док = Документ.ЗаписьКнигиПокупок.ТекущийДокумент,Документ.ЗаписьКнигиПокупокТорг.ТекущийДокумент;
      |Контрагент = Документ.ЗаписьКнигиПокупок.Контрагент,Документ.ЗаписьКнигиПокупокТорг.Контрагент;
      |ДокВсего = Документ.ЗаписьКнигиПокупок.Всего,Документ.ЗаписьКнигиПокупокТорг.Всего;
      |ДокНДС20 = Документ.ЗаписьКнигиПокупок.НДС20,Документ.ЗаписьКнигиПокупокТорг.НДС20;
      |ДокСуммаБезНДС20 = Документ.ЗаписьКнигиПокупок.СуммаБезНДС20,Документ.ЗаписьКнигиПокупокТорг.СуммаБезНДС20;
      |ДокНДС10 = Документ.ЗаписьКнигиПокупок.НДС10,Документ.ЗаписьКнигиПокупокТорг.НДС10;
      |ДокСуммаБезНДС10 = Документ.ЗаписьКнигиПокупок.СуммаБезНДС10,Документ.ЗаписьКнигиПокупокТорг.СуммаБезНДС10;
      |ДокСуммаСовсемБезНДС = Документ.ЗаписьКнигиПокупок.СуммаСовсемБезНДС,Документ.ЗаписьКнигиПокупокТорг.СуммаСовсемБезНДС;
      |ДокСчет = Документ.ЗаписьКнигиПокупок.КоррСчет;
      |СтавкаНоль = Документ.ЗаписьКнигиПокупок.НДСпоСтавкеНольПроцентов,Документ.ЗаписьКнигиПокупокТорг.НДСпоСтавкеНольПроцентов;";
      Если СтандартнаяФорма = 0 Тогда
         Если ГруппироватьПоКонтрагентам = 1 Тогда
             ТекстЗапроса = ТекстЗапроса + "
            |Группировка Контрагент;";
         КонецЕсли;
      КонецЕсли;
      ТекстЗапроса = ТекстЗапроса + "
      |Группировка Док;
      |Функция ВсегоПокупок = Сумма(Пересчет(Док,ДокВсего));
      |Функция НДС20 = Сумма(Пересчет(Док,ДокНДС20));
      |Функция СуммаБезНДС20 = Сумма(Пересчет(Док,ДокСуммаБезНДС20));
      |Функция НДС10 = Сумма(Пересчет(Док,ДокНДС10));
      |Функция СуммаБезНДС10 = Сумма(Пересчет(Док,ДокСуммаБезНДС10));
      |Функция НДС0 = Сумма(Пересчет(Док,ДокВсего)) Когда (СтавкаНоль = 1);
      |Функция СуммаСовсемБезНДС = Сумма(Пересчет(Док,ДокСуммаСовсемБезНДС));
      |Условие (ДокВсего <> 0);";
      Если СтандартнаяФорма = 0 Тогда
         Если ВыбКонтрагент.Выбран() = 1 Тогда
             ТекстЗапроса = ТекстЗапроса + "
            |Условие (Контрагент в ВыбКонтрагент);";
         КонецЕсли;
         
         Если КоррСчет.Выбран() = 1 Тогда
             ТекстЗапроса = ТекстЗапроса + "
            |Условие (ДокСчет = КоррСчет);";
         КонецЕсли;
      КонецЕсли;
      
   Запрос = СоздатьОбъект("Запрос");
   Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
       Предупреждение("Невозможно выполнить запрос");
      Возврат;
   КонецЕсли;
   Запрос.Выгрузить(ТабОтчета);
   ТабОтчета.НоваяКолонка("ДатаДок","Дата");
   ТабОтчета.НоваяКолонка("ДатаНомер");
   ТабОтчета.НоваяКолонка("ДатаОплаты");
   ТабОтчета.НоваяКолонка("ДатаОприходования");
   ТабОтчета.НоваяКолонка("Контрагент","Справочник.Контрагенты");
   ТабОтчета.НоваяКолонка("ИНН");
   ТабОтчета.НоваяКолонка("ГТД");
   ТабОтчета.НоваяКолонка("ПозицияДок");
   ТабОтчета.ВыбратьСтроки();
   Пока ТабОтчета.ПолучитьСтроку()=1 Цикл
      Если ПустоеЗначение(ТабОтчета.Док)=1 Тогда
          Продолжить;
      КонецЕсли;
      ТабОтчета.ДатаДок         = ТабОтчета.Док.ДатаДок;
      ТабОтчета.ДатаНомер         = СокрЛП(ТабОтчета.Док.ДатаНомерСчетаФактуры) +" "+СокрЛП(ТабОтчета.Док.ДополнительнаяИнформация);
      ТабОтчета.ДатаОплаты      = ТабОтчета.Док.ДатаОплаты;
      ТабОтчета.ДатаОприходования = ТабОтчета.Док.ДатаОприходования;
      ТабОтчета.Контрагент        = ТабОтчета.Док.Контрагент;
      ТабОтчета.ИНН               = ТабОтчета.Док.Контрагент.ИНН;
      ТабОтчета.ГТД               = СписокНомеровГТД(ТабОтчета.Док.ДокументОснование);
      ТабОтчета.ПозицияДок      = ТабОтчета.Док.ПолучитьПозицию();
   КонецЦикла;
   
   ДокАвто = СоздатьОбъект("Документ.ЗаписиКнигиПокупок");
   ДокАвто.ВыбратьДокументы(ДатаНачала,ДатаКонца);
   Всего       = 0;
   БезНДС20    = 0;
   НДС20       = 0;
   БезНДС10   = 0;
   НДС10      = 0;
   НДС0      = 0;
   Освобождаемые = 0;
   
   Пока ДокАвто.ПолучитьДокумент()=1 Цикл
      Если ДокАвто.ПометкаУдаления()=1 Тогда
          Продолжить;
      КонецЕсли;
      ДокАвто.ВыбратьСтроки();
      Пока ДокАвто.ПолучитьСтроку() = 1 Цикл
         Если (СтандартнаяФорма = 0)и(ВыбКонтрагент.Выбран() = 1)и(ВыбКонтрагент<>ДокАвто.Контрагент) Тогда
            Продолжить;
         КонецЕсли;
         Если (КоррСчет.Выбран() = 1)и(СтандартнаяФорма = 0) Тогда
            Если (КоррСчет<>СчетПоКоду("68.2"))и(ДокАвто.Аванс=0) Тогда
                Продолжить;
            КонецЕсли;
            Если (КоррСчет<>СчетПоКоду("76.АВ"))и(ДокАвто.Аванс=1) Тогда
                Продолжить;
            КонецЕсли;
         КонецЕсли;
         Если (ДокАвто.Всего<0)И(ДокАвто.СубСчет19= СчетПоКоду("19.3")) Тогда
             Продолжить;
         КонецЕсли;
           
         ТабОтчета.НоваяСтрока();
         
         ТабОтчета.Док             = ДокАвто.ТекущийДокумент();
         ТабОтчета.ДатаДок         = Макс(ДокАвто.Оплата.ДатаДок,ДокАвто.Приход.ДатаДок);
         ТабОтчета.ДатаНомер         = ДокАвто.ДатаНомерСчетаФактуры;
         ТабОтчета.ДатаОплаты      = ДокАвто.Оплата.ДатаДок;
         ТабОтчета.ДатаОприходования = ДокАвто.Приход.ДатаДок;
         ТабОтчета.Контрагент        = ДокАвто.Контрагент;
         ТабОтчета.ИНН               = ДокАвто.Контрагент.ИНН;
         ТабОтчета.ГТД               = ДокАвто.СтранаГТД;
         
         ТабОтчета.ПозицияДок      = Макс(ДокАвто.Оплата.ПолучитьПозицию(),ДокАвто.Приход.ПолучитьПозицию());
         
         ТабОтчета.ВсегоПокупок       = ДокАвто.Всего;
         ТабОтчета.СуммаБезНДС20    = ДокАвто.БезНДС20;             
         ТабОтчета.НДС20          = ДокАвто.НДС20;
         ТабОтчета.СуммаБезНДС10    = ДокАвто.БезНДС10;
         ТабОтчета.НДС10          = ДокАвто.НДС10;
         ТабОтчета.НДС0             = ДокАвто.НДС0;
         ТабОтчета.СуммаСовсемБезНДС = ДокАвто.Освобождаемые;
         
         Всего       = Всего + ДокАвто.Всего;
         БезНДС20    = БезНДС20 + ДокАвто.БезНДС20;
         НДС20       = НДС20 + ДокАвто.НДС20;
         БезНДС10    = БезНДС10 + ДокАвто.БезНДС10;
         НДС10       = НДС10 + ДокАвто.НДС10;
         НДС0      = НДС0 + ДокАвто.НДС0;
         Освобождаемые = Освобождаемые + ДокАвто.Освобождаемые;
                  
      КонецЦикла;
   КонецЦикла;
   
   ТабОтчета.УстановитьЗначение(1,"ВсегоПокупок",Всего+ТабОтчета.ПолучитьЗначение(1,"ВсегоПокупок"));
   ТабОтчета.УстановитьЗначение(1,"СуммаБезНДС20",БезНДС20+ТабОтчета.ПолучитьЗначение(1,"СуммаБезНДС20"));
   ТабОтчета.УстановитьЗначение(1,"НДС20",НДС20+ТабОтчета.ПолучитьЗначение(1,"НДС20"));
   ТабОтчета.УстановитьЗначение(1,"СуммаБезНДС10",БезНДС10+ТабОтчета.ПолучитьЗначение(1,"СуммаБезНДС10"));
   ТабОтчета.УстановитьЗначение(1,"НДС10",НДС10+ТабОтчета.ПолучитьЗначение(1,"НДС10"));
   ТабОтчета.УстановитьЗначение(1,"НДС0",НДС0+ТабОтчета.ПолучитьЗначение(1,"НДС0"));
   ТабОтчета.УстановитьЗначение(1,"СуммаСовсемБезНДС",Освобождаемые+ТабОтчета.ПолучитьЗначение(1,"СуммаСовсемБезНДС"));
   
   ТабОтчета.Сортировать("ПозицияДок");
   
   Ном = 1;
   
   ТабОтчета.ВыбратьСтроки();
    Пока ТабОтчета.ПолучитьСтроку()=1 Цикл
      Если ПустоеЗначение(ТабОтчета.Док)=1 Тогда
          Продолжить;
      КонецЕсли;
      Таб.ВывестиСекцию("Строка");
      Ном = Ном + 1;
   КонецЦикла;
   
   ТабОтчета.ПолучитьСтрокуПоНомеру(1);
   Таб.ВывестиСекцию("Всего");

   ГлБух = ФИО(Константа.ГлБухгалтер.Получить( ДатаКонца ));
   Таб.ВывестиСекцию("Подвал");

   ВерхнийКолонтитул = "Книга покупок ("+ПериодСтр(ДатаНачала, ДатаКонца)+")";
   НижнийКолонтитул = "Отчет сформирован "+ТекущаяДата()+" "+ТекущееВремя()+?(ПустоеЗначение(ИмяПользователя())=0,"  Пользователь: "+ИмяПользователя(),"");
   
   Таб.Опции(0,0,13,2,"Параметры печати книги покупок" );
   Таб.ОбластьПечати(2);
   Таб.ПовторятьПриПечатиСтроки(9, 13);
   Таб.ПараметрыСтраницы(2,,,,,,,,,1);
   Таб.ТолькоПросмотр(1);
   Таб.Показать("Книга покупок","");
   
КонецПроцедуры // КнигаПокупок()

//*****************************************************************************
Процедура ЖурналУчета()
   
   Таб.ИсходнаяТаблица("ЖурналУчета");
   УстановленныйОтбор = "";
   Если СтандартнаяФорма = 0 Тогда
      Если ВыбКонтрагент.Выбран() = 1 Тогда
          УстановленныйОтбор = "Установлен отбор по контрагенту: "+СокрЛП(ВыбКонтрагент.Наименование);
      КонецЕсли;
   КонецЕсли;
   Таб.ВывестиСекцию("Шапка");

   ТекстЗапроса = "Период с ДатаНачала по ДатаКонца;
      |ОбрабатыватьДокументы Все;
      |Обрабатывать НеПомеченныеНаУдаление;
      |Док = Документ.СчетФактураПолученный.ТекущийДокумент,
      |               Документ.ПоступлениеТоваров.ТекущийДокумент,
      |               Документ.ПоступлениеМатериалов.ТекущийДокумент,
      |               Документ.ПоступлениеОборудования.ТекущийДокумент,
      |               Документ.ПоступлениеОС.ТекущийДокумент,
      |               Документ.ПоступлениеНМА.ТекущийДокумент,
      |               Документ.УслугиСтороннихОрганизаций.ТекущийДокумент;      
      |ДокументОснование = Документ.СчетФактураПолученный.ДокументОприходования,
      |                    Документ.ПоступлениеТоваров.ТекущийДокумент,
      |                    Документ.ПоступлениеМатериалов.ТекущийДокумент,
      |                    Документ.ПоступлениеОборудования.ТекущийДокумент,
      |                    Документ.ПоступлениеОС.ТекущийДокумент,
      |                    Документ.ПоступлениеНМА.ТекущийДокумент,
      |                    Документ.УслугиСтороннихОрганизаций.ТекущийДокумент;
      |Контрагент = Документ.СчетФактураПолученный.Контрагент,
      |             Документ.ПоступлениеТоваров.Контрагент,
      |             Документ.ПоступлениеМатериалов.Контрагент,
      |             Документ.ПоступлениеОборудования.Контрагент,
      |             Документ.ПоступлениеОС.Контрагент,
      |             Документ.ПоступлениеНМА.Контрагент,
      |             Документ.УслугиСтороннихОрганизаций.Контрагент;
      |Валюта = Документ.СчетФактураПолученный.Договор.ВалютаДоговора,
      |         Документ.ПоступлениеТоваров.Договор.ВалютаДоговора,
      |         Документ.ПоступлениеМатериалов.Договор.ВалютаДоговора,
      |         Документ.ПоступлениеОборудования.Договор.ВалютаДоговора,
      |         Документ.ПоступлениеОС.Договор.ВалютаДоговора,
      |         Документ.ПоступлениеНМА.Договор.ВалютаДоговора,
      |         Документ.УслугиСтороннихОрганизаций.Договор.ВалютаДоговора;
      |ДатаНомер = Документ.СчетФактураПолученный.ДатаНомерСчетаФактуры,
      |            Документ.ПоступлениеТоваров.ДатаНомерСчетаФактуры,
      |            Документ.ПоступлениеМатериалов.ДатаНомерСчетаФактуры,
      |            Документ.ПоступлениеОборудования.ДатаНомерСчетаФактуры,
      |            Документ.ПоступлениеОС.ДатаНомерСчетаФактуры,
      |            Документ.ПоступлениеНМА.ДатаНомерСчетаФактуры,
      |            Документ.УслугиСтороннихОрганизаций.ДатаНомерСчетаФактуры;
      |Всего = Документ.СчетФактураПолученный.Всего,
      |        Документ.ПоступлениеТоваров.Всего,
      |        Документ.ПоступлениеМатериалов.Всего,
      |        Документ.ПоступлениеОборудования.Всего,
      |        Документ.ПоступлениеОС.Всего,
      |        Документ.ПоступлениеНМА.Всего,
      |        Документ.УслугиСтороннихОрганизаций.Всего;";
      Если СтандартнаяФорма = 0 Тогда
         Если ГруппироватьПоКонтрагентам = 1 Тогда
             ТекстЗапроса = ТекстЗапроса + "
            |Группировка Контрагент;";
         КонецЕсли;
      КонецЕсли;
      ТекстЗапроса = ТекстЗапроса + "
      |Группировка Док;
      |Функция ВсегоПокупок = Сумма(Всего);";
      Если СтандартнаяФорма = 0 Тогда
         Если ВыбКонтрагент.Выбран() = 1 Тогда
             ТекстЗапроса = ТекстЗапроса + "
            |Условие (Контрагент в ВыбКонтрагент);";
         КонецЕсли;
      КонецЕсли;
      ТекстЗапроса = ТекстЗапроса + "
      |Условие (ПустоеЗначение(ДатаНомер) = 0);";
            
   Запрос = СоздатьОбъект("Запрос");
   Если Запрос.Выполнить(ТекстЗапроса) = 0 Тогда
       Предупреждение("Невозможно выполнить запрос");
      Возврат;
   КонецЕсли;
   
   Ном = 1;
   Пока Запрос.Группировка(1) = 1 Цикл
      Если (СтандартнаяФорма = 1) или (ГруппироватьПоКонтрагентам = 0) Тогда
         Таб.ВывестиСекцию("Строка");
         Ном = Ном + 1;
         
      ИначеЕсли ГруппироватьПоКонтрагентам = 1 Тогда
         Если Запрос.Контрагент.ЭтоГруппа() = 1 Тогда
             Продолжить;
         КонецЕсли;
         Таб.ВывестиСекцию("Контрагент");
         Пока Запрос.Группировка(2) = 1 Цикл
            Таб.ВывестиСекцию("Строка");
            Ном = Ном + 1;
         КонецЦикла;
      КонецЕсли;
   КонецЦикла;

   ВерхнийКолонтитул = "Журнал учета полученных счетов-фактур ("+ПериодСтр(ДатаНачала, ДатаКонца)+")";
   НижнийКолонтитул = "Отчет сформирован "+ТекущаяДата()+" "+ТекущееВремя()+?(ПустоеЗначение(ИмяПользователя())=0,"  Пользователь: "+ИмяПользователя(),"");
   
   Таб.Опции(0,0,6,0, "Параметры печати журналы полученных счетов-фактур" );
   Таб.ОбластьПечати(2);
   Таб.ПовторятьПриПечатиСтроки(6, 6);
   Таб.ПараметрыСтраницы(1,,,,,,,,,1);
   Таб.ТолькоПросмотр(1);
   Таб.Показать("Журнал учета полученных счетов-фактур","");
   
КонецПроцедуры // ЖурналУчета()

//*****************************************************************************
Процедура Сформировать()
   
   Если ДатаНачала > ДатаКонца Тогда
      Предупреждение("Неправильно задан период формирования отчета!
                  |Дата начала больше даты окончания периода.");
      Возврат;
   КонецЕсли;
   
   Расшифровка = СоздатьОбъект("СписокЗначений");
   Расшифровка.Установить("Отчет", "КнигаПокупок");
    Расшифровка.Установить("ДатаНачала", ДатаНачала);
    Расшифровка.Установить("ДатаКонца", ДатаКонца);
   Расшифровка.Установить("ВариантФормирования", ВариантФормирования);
   Расшифровка.Установить("СтандартнаяФорма", СтандартнаяФорма);
   Расшифровка.Установить("ВыбКонтрагент", ВыбКонтрагент);
   Расшифровка.Установить("КоррСчет", КоррСчет);
   Расшифровка.Установить("ГруппироватьПоКонтрагентам", ГруппироватьПоКонтрагентам);
   
   Если (ТипЗначенияСтр(Таб) = "Таблица") и
       (ТекущийВариантФормирования = ВариантФормирования) и
       ((Обновить = 1) или (Обновить = 2)) Тогда
   
      Таб.Очистить();
      
   Иначе
         Таб = СоздатьОбъект("Таблица");
   КонецЕсли;
   
   Если ВариантФормирования = 1 Тогда
       КнигаПокупок();
   Иначе
      ЖурналУчета();
   КонецЕсли;
   
   Если Обновить = 2 Тогда
         СтрокаДействийФормы = "#Закрыть";
    КонецЕсли;
   
КонецПроцедуры   // Сформировать()


////////////////////////////////////////////////////////////////////////////////
// ПРЕДОПРЕДЕЛЕННЫЕ ПРОЦЕДУРЫ
//

//*****************************************************************************
// Предопределенная процедура
//
// Описание:
//  Устанавливает начальные значения элементов диалога.
//
Процедура ПриОткрытии(Флаг)
   
   Если глФлагРасшифровки = 1 Тогда
      Обновить = глОбновить;

      ДатаНачала = глРасшифровка.Получить("ДатаНачала");
      ДатаКонца = глРасшифровка.Получить("ДатаКонца");
      ВариантФормирования = глРасшифровка.Получить("ВариантФормирования");
      СтандартнаяФорма = глРасшифровка.Получить("СтандартнаяФорма");
      ВыбКонтрагент = глРасшифровка.Получить("ВыбКонтрагент");
      КоррСчет = глРасшифровка.Получить("КоррСчет");
      ГруппироватьПоКонтрагентам = глРасшифровка.Получить("ГруппироватьПоКонтрагентам");
       
      Если Обновить = 0 Тогда
      Иначе
         ТекущийВариантФормирования = ВариантФормирования;
         Таб = глТаблица;
      КонецЕсли;

      Если Обновить = 2 Тогда
      Иначе
         Сформировать();
         СтатусВозврата(0);
         Возврат;
      КонецЕсли;
      
   Иначе
      Обновить = 0;
      ДатаНачала = НачалоПериодаБИ();
      ДатаКонца = КонецПериодаБИ();
      Если Флаг = 0 Тогда
         ВариантФормирования = 1;
         СтандартнаяФорма = 1;
         КоррСчет = СчетПоКоду("68.2");
      КонецЕсли;
   КонецЕсли;
   УправлениеДиалогом();
   
КонецПроцедуры // ПриОткрытии()


Большое спасибо за проявленный интерес к моей теме((

ADRENALIN1986

Тоесть что бы отчет книги покупок сортировал записи по отгрузке тоеь сверху кто произвел большую отгрузка ит.п. я так понял.... может я что то не правильно говорю ((( тогда подскажите где там вообще сортировка в коде

ADRENALIN1986

Спасибо попробую если поможет я твой должник)))

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск