Имя: Пароль:
1C
1С v8
Пропадают настройки после изменения периода
0 serg-lom89
 
23.09.14
16:24
Есть отчет Исполнение заявок..
Доделал его что бы выбирался период для документа исполнения.
Но вот другая проблема...
получается в настройках ввожу отбор,затем указываю дату выбора периода для Исполнения...и бац,они пропадают.Нашел что в реквизитах ДатаНач1 и ДатаНач2 есть процедурка при изменении,которая и убирает..вот только я никак не могу понять как обойти это все?


    ПостроительОтчетаИсполнениеЗаявок.Текст =
    "ВЫБРАТЬ
    |    ЗаявкаНаСклад.ДокументОснование КАК Основание,
    |    ЗаявкаНаСклад.Ссылка КАК Заявка,
    |    Исполнение.Ссылка КАК Исполнение,
    |    СтатусЗаявки.Значение КАК СтатусЗаявки,
    |    СтатусРейса.Значение КАК СтатусРейса,
    |    СтатусWMS.Значение КАК СтатусWMS,
    |    ВЫБОР
    |        КОГДА Исполнение.Ссылка ЕСТЬ NULL
    |            ТОГДА ЛОЖЬ
    |        ИНАЧЕ ИСТИНА
    |    КОНЕЦ КАК ЕстьИсполнение,
    |    ЗаявкаНаСклад.ВидОперации,
    |    ЗаявкаНаСклад.ДокументОснование.Проведен,
    |    ЗаявкаНаСклад.ДокументОснование.ПометкаУдаления,
    |    ЗаявкаНаСклад.ДокументОснование.Комментарий КАК Комментарий,
    |    Исполнение.Количество КАК Количество,
    |    Исполнение.КоличествоФакт КАК КоличествоФакт
    |ИЗ
    |    Документ.ЗаявкаНаСклад КАК ЗаявкаНаСклад
    |        ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |            ЗначенияСвойствОбъектов.Объект КАК Объект,
    |            ЗначенияСвойствОбъектов.Свойство КАК Свойство,
    |            ЗначенияСвойствОбъектов.Значение КАК Значение
    |        ИЗ
    |            РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    |        ГДЕ
    |            ЗначенияСвойствОбъектов.Свойство = ЗНАЧЕНИЕ(ПланВидовХарактеристик.СвойстваОбъектов.СтатусЗаявкиНаСклад)) КАК СтатусЗаявки
    |        ПО ЗаявкаНаСклад.Ссылка = СтатусЗаявки.Объект
    |        ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |            ЗначенияСвойствОбъектов.Объект КАК Объект,
    |            ЗначенияСвойствОбъектов.Свойство КАК Свойство,
    |            ЗначенияСвойствОбъектов.Значение КАК Значение
    |        ИЗ
    |            РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    |        ГДЕ
    |            ЗначенияСвойствОбъектов.Свойство = ЗНАЧЕНИЕ(ПланВидовХарактеристик.СвойстваОбъектов.СтадияДоставкиТовара)) КАК СтатусРейса
    |        ПО ЗаявкаНаСклад.Ссылка = СтатусРейса.Объект
    |        ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |            ЗначенияСвойствОбъектов.Объект КАК Объект,
    |            ЗначенияСвойствОбъектов.Свойство КАК Свойство,
    |            ЗначенияСвойствОбъектов.Значение КАК Значение
    |        ИЗ
    |            РегистрСведений.ЗначенияСвойствОбъектов КАК ЗначенияСвойствОбъектов
    |        ГДЕ
    |            ЗначенияСвойствОбъектов.Свойство = ЗНАЧЕНИЕ(ПланВидовХарактеристик.СвойстваОбъектов.СтатусДокументаWMS)) КАК СтатусWMS
    |        ПО ЗаявкаНаСклад.Ссылка = СтатусWMS.Объект
    |        ЛЕВОЕ СОЕДИНЕНИЕ (ВЫБРАТЬ
    |            ИсполнениеЗаявкиНаСкладТовары.Ссылка КАК Ссылка,
    |            ИсполнениеЗаявкиНаСкладТовары.Ссылка.ЗаявкаНаСклад.Ссылка КАК ЗаявкаНаСкладСсылка,
    |            СУММА(ИсполнениеЗаявкиНаСкладТовары.Количество) КАК Количество,
    |            СУММА(ИсполнениеЗаявкиНаСкладТовары.КоличествоФакт) КАК КоличествоФакт
    |        ИЗ
    |            Документ.ИсполнениеЗаявкиНаСклад.Товары КАК ИсполнениеЗаявкиНаСкладТовары
    |        
    |        СГРУППИРОВАТЬ ПО
    |            ИсполнениеЗаявкиНаСкладТовары.Ссылка,
    |            ИсполнениеЗаявкиНаСкладТовары.Ссылка.ЗаявкаНаСклад.Ссылка) КАК Исполнение
    |        ПО ЗаявкаНаСклад.Ссылка = Исполнение.ЗаявкаНаСкладСсылка
    |            И (Исполнение.Ссылка.Дата МЕЖДУ &Дата3 И &Дата4)
    |ГДЕ
    |    ЗаявкаНаСклад.Дата МЕЖДУ &Дата1 И &Дата2
    |    И (НЕ ЗаявкаНаСклад.ПометкаУдаления)
    |    И ЗаявкаНаСклад.Проведен
    |    И ЗаявкаНаСклад.Склад <> &Склад
    |    И ЗаявкаНаСклад.Склад <> &Склад1
    |
    |УПОРЯДОЧИТЬ ПО
    |    ЗаявкаНаСклад.Дата
    |ИТОГИ
    |    СУММА(Количество),
    |    СУММА(КоличествоФакт)
    |ПО
    |    ОБЩИЕ";
    Если ДатаНач1  = '00010101' и ДатаКон1 = '00010101' Тогда  
        ПостроительОтчетаИсполнениеЗаявок.Текст = СтрЗаменить(ПостроительОтчетаИсполнениеЗаявок.Текст,"И (Исполнение.Ссылка.Дата МЕЖДУ &Дата3 И &Дата4)","");
    КонецЕсли;
    
    ПостроительОтчетаИсполнениеЗаявок.ЗаполнитьНастройки();
    ПостроительОтчетаИсполнениеЗаявок.ЗаполнениеРасшифровки = ВидЗаполненияРасшифровкиПостроителяОтчета.ЗначенияГруппировок;
    ПостроительОтчетаИсполнениеЗаявок.ТекстЗаголовка = "Исполнение заявок";
    Настройка = ВосстановитьЗначение("НастройкаВнешниеОтчетыВнешнийОтчет3ИсполнениеЗаявок_c9abf28a-a4a1-4b4c-9f6d-ba06ceb60e13");
    
    Если Настройка <> Неопределено Тогда
        ПостроительОтчетаИсполнениеЗаявок.УстановитьНастройки(Настройка);
    КонецЕсли;

Может кто поможет объяснить? буду премного благодарен.
1 serg-lom89
 
23.09.14
17:15
Вроде допер...Но вот только как всунуть условие
   Если ДатаНач1  = '00010101' и ДатаКон1 = '00010101' Тогда  
        ПостроительОтчетаИсполнениеЗаявок.Текст = СтрЗаменить(ПостроительОтчетаИсполнениеЗаявок.Текст,"И (Исполнение.Ссылка.Дата МЕЖДУ &Дата3 И &Дата4)","");
    КонецЕсли;

в запрос?
2 barrgand
 
23.09.14
17:22
(1) {ГДЕ
    (Исполнение.Ссылка.Дата МЕЖДУ &Дата3 И &Дата4)}
3 serg-lom89
 
23.09.14
17:25
(2) а если в форме не выбрана дата? или если она не указана то запрос отработает как без ограничения дат?
4 barrgand
 
23.09.14
17:30
(3) Если не указывать параметры Дата3 и Дата4, то запрос отработает без них.
5 serg-lom89
 
23.09.14
17:34
(2) это я понимаю ставиться будет в этом условии?

|ГДЕ
    |    ЗаявкаНаСклад.Дата МЕЖДУ &Дата1 И &Дата2
    |    И (НЕ ЗаявкаНаСклад.ПометкаУдаления)
    |    И ЗаявкаНаСклад.Проведен
    |    И ЗаявкаНаСклад.Склад <> &Склад
    |    И ЗаявкаНаСклад.Склад <> &Склад1
??
6 barrgand
 
23.09.14
17:36
(5) Нет, это после этого условия.
7 serg-lom89
 
23.09.14
17:46
(6) а в связи я так понимаю убираю "И (Исполнение.Ссылка.Дата МЕЖДУ &Дата3 И &Дата4)
"?
8 barrgand
 
23.09.14
17:52
(7) убирай
9 serg-lom89
 
23.09.14
18:07
(8) спасибо за помощь)
10 Михаил Козлов
 
23.09.14
19:28
(0) Изменение текста запроса построителя сбрасывает настройки.
Если текст заменить нужно, то перед заменой запомнить настройки построителя, а после - загрузить.
11 serg-lom89
 
24.09.14
13:06
сделал в общем что бы при в процедуре моих реквизитов при изменении ,они сохранялись настройки .а потом в проц. Инициализации востаннавливались