|
8.2 УТ 11 Текущее состояние заказа клиента | ☑ | ||
---|---|---|---|---|
0
Okoons
20.08.11
✎
01:13
|
Подскажите, в какую сторону кода лезть, не могу понять как отображается состояние заказа клиента в форме списка заказов клиента,
в форме это реквизит "Состояние" тип перечисление.СостоянияЗаказовКлиента , не один объект метаданных не содержит тип этого перечисления , значит должен быть гдето запрос который выдает значения этого перечисления исходя от входных данных по заказу ? как найти этот запрос или то что выдает значения этого перечисления относительно заказа клиента |
|||
1
unknown181538
20.08.11
✎
01:15
|
Смотри текст запроса динамического списка формы списка заказов.
|
|||
2
Okoons
20.08.11
✎
01:19
|
как его увидеть , где этот запрос должен находится ??
|
|||
3
unknown181538
20.08.11
✎
01:20
|
Реквизит формы "Список", типа "динамическийСписок". У него св-ва смотри.
|
|||
4
unknown181538
20.08.11
✎
01:21
|
ВЫБРАТЬ
ДокументЗаказКлиента.Ссылка КАК Ссылка, ДокументЗаказКлиента.ПометкаУдаления КАК ПометкаУдаления, ДокументЗаказКлиента.Номер КАК Номер, ДокументЗаказКлиента.Дата КАК Дата, ДокументЗаказКлиента.Проведен КАК Проведен, ДокументЗаказКлиента.Приоритет КАК Приоритет, ДокументЗаказКлиента.Партнер КАК Партнер, ДокументЗаказКлиента.Контрагент КАК Контрагент, ДокументЗаказКлиента.Организация КАК Организация, ДокументЗаказКлиента.Соглашение КАК Соглашение, ДокументЗаказКлиента.Сделка КАК Сделка, ДокументЗаказКлиента.Валюта КАК Валюта, ДокументЗаказКлиента.СуммаДокумента КАК СуммаДокумента, ДокументЗаказКлиента.ГрафикОплаты КАК ГрафикОплаты, ДокументЗаказКлиента.ЖелаемаяДатаОтгрузки КАК ЖелаемаяДатаОтгрузки, ДокументЗаказКлиента.Склад КАК Склад, ДокументЗаказКлиента.Статус КАК Статус, ДокументЗаказКлиента.Менеджер КАК Менеджер, ДокументЗаказКлиента.ДополнительнаяИнформация КАК ДополнительнаяИнформация, ДокументЗаказКлиента.СуммаАвансаДоОбеспечения КАК СуммаАвансаДоОбеспечения, ДокументЗаказКлиента.СуммаПредоплатыДоОтгрузки КАК СуммаПредоплатыДоОтгрузки, ДокументЗаказКлиента.ДатаПервойОтгрузки КАК ДатаПервойОтгрузки, ДокументЗаказКлиента.ХозяйственнаяОперация КАК ХозяйственнаяОперация, ДокументЗаказКлиента.Комментарий КАК Комментарий, ВЫБОР КОГДА (НЕ ДокументЗаказКлиента.Проведен) ТОГДА ЗНАЧЕНИЕ(Перечисление.СостоянияЗаказовКлиентов.ПустаяСсылка) КОГДА ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.НеСогласован) ТОГДА ЗНАЧЕНИЕ(Перечисление.СостоянияЗаказовКлиентов.ОжидаетсяСогласование) КОГДА ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Закрыт) ТОГДА ЗНАЧЕНИЕ(Перечисление.СостоянияЗаказовКлиентов.Закрыт) КОГДА ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Согласован) И ДокументЗаказКлиента.СуммаАвансаДоОбеспечения > 0 И ДокументЗаказКлиента.СуммаДокумента - ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОплатеОстаток, 0) < ДокументЗаказКлиента.СуммаАвансаДоОбеспечения ТОГДА ЗНАЧЕНИЕ(Перечисление.СостоянияЗаказовКлиентов.ОжидаетсяАвансДоОбеспечения) КОГДА ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Согласован) И ДокументЗаказКлиента.СуммаДокумента > 0 И ДокументЗаказКлиента.СуммаДокумента - ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОплатеОстаток, 0) >= ДокументЗаказКлиента.СуммаАвансаДоОбеспечения ТОГДА ЗНАЧЕНИЕ(Перечисление.СостоянияЗаказовКлиентов.ГотовКОбеспечению) КОГДА (ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Согласован) ИЛИ ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.КОбеспечению)) И ДокументЗаказКлиента.СуммаПредоплатыДоОтгрузки > 0 И ДокументЗаказКлиента.СуммаДокумента - ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОплатеОстаток, 0) < ДокументЗаказКлиента.СуммаПредоплатыДоОтгрузки + ДокументЗаказКлиента.СуммаАвансаДоОбеспечения ТОГДА ЗНАЧЕНИЕ(Перечисление.СостоянияЗаказовКлиентов.ОжидаетсяПредоплатаДоОтгрузки) КОГДА (ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Согласован) ИЛИ ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.КОбеспечению)) И ДокументЗаказКлиента.СуммаДокумента > 0 И ДокументЗаказКлиента.СуммаДокумента - ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОплатеОстаток, 0) >= ДокументЗаказКлиента.СуммаПредоплатыДоОтгрузки + ДокументЗаказКлиента.СуммаАвансаДоОбеспечения И ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОтгрузкеОстаток, 0) < 0 ТОГДА ЗНАЧЕНИЕ(Перечисление.СостоянияЗаказовКлиентов.ГотовКОтгрузке) КОГДА ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.КОтгрузке) И ДокументЗаказКлиента.СуммаДокумента > 0 И ДокументЗаказКлиента.СуммаДокумента - ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОплатеОстаток, 0) >= ДокументЗаказКлиента.СуммаПредоплатыДоОтгрузки + ДокументЗаказКлиента.СуммаАвансаДоОбеспечения И ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОтгрузкеОстаток, 0) < 0 ТОГДА ЗНАЧЕНИЕ(Перечисление.СостоянияЗаказовКлиентов.ОжидаетсяОтгрузка) КОГДА ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.КОтгрузке) И ДокументЗаказКлиента.СуммаДокумента - ДокументЗаказКлиента.СуммаАвансаДоОбеспечения + ДокументЗаказКлиента.СуммаПредоплатыДоОтгрузки > 0 И ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОтгрузкеОстаток, 0) >= 0 И ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОплатеОстаток, 0) > 0 ТОГДА ЗНАЧЕНИЕ(Перечисление.СостоянияЗаказовКлиентов.ОжидаетсяОплатаПослеОтгрузки) КОГДА ДокументЗаказКлиента.Статус <> ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Закрыт) ТОГДА ЗНАЧЕНИЕ(Перечисление.СостоянияЗаказовКлиентов.ГотовКЗакрытию) КОНЕЦ КАК Состояние, ВЫБОР КОГДА (НЕ ДокументЗаказКлиента.Проведен) ТОГДА ЛОЖЬ КОГДА ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Закрыт) ТОГДА ЛОЖЬ КОГДА ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.НеСогласован) И ДокументЗаказКлиента.ДатаСогласования <> ДАТАВРЕМЯ(1, 1, 1) И ДокументЗаказКлиента.ДатаСогласования < &ДатаАктуальности ТОГДА ИСТИНА КОГДА ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Согласован) И ДокументЗаказКлиента.СуммаАвансаДоОбеспечения > 0 И ДокументЗаказКлиента.СуммаДокумента - ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОплатеОстаток, 0) < ДокументЗаказКлиента.СуммаАвансаДоОбеспечения И РасчетыСКлиентамиОстаткиНаДатуАктуальности.КОплатеОстаток > 0 ТОГДА ИСТИНА КОГДА ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Согласован) И ДокументЗаказКлиента.СуммаДокумента > 0 И ДокументЗаказКлиента.СуммаДокумента - ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОплатеОстаток, 0) >= ДокументЗаказКлиента.СуммаАвансаДоОбеспечения И ДокументЗаказКлиента.ДатаПервойОтгрузки <> ДАТАВРЕМЯ(1, 1, 1) И ДокументЗаказКлиента.ДатаПервойОтгрузки < &ДатаАктуальности ТОГДА ИСТИНА КОГДА ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.КОбеспечению) И ДокументЗаказКлиента.СуммаПредоплатыДоОтгрузки > 0 И ДокументЗаказКлиента.СуммаДокумента - ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОплатеОстаток, 0) < ДокументЗаказКлиента.СуммаПредоплатыДоОтгрузки + ДокументЗаказКлиента.СуммаАвансаДоОбеспечения И РасчетыСКлиентамиОстаткиНаДатуАктуальности.КОплатеОстаток > 0 ТОГДА ИСТИНА КОГДА ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.КОбеспечению) И ДокументЗаказКлиента.СуммаДокумента - ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОплатеОстаток, 0) >= ДокументЗаказКлиента.СуммаПредоплатыДоОтгрузки + ДокументЗаказКлиента.СуммаАвансаДоОбеспечения И ДокументЗаказКлиента.ДатаПервойОтгрузки <> ДАТАВРЕМЯ(1, 1, 1) И ДокументЗаказКлиента.ДатаПервойОтгрузки < &ДатаАктуальности ТОГДА ИСТИНА КОГДА ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.КОтгрузке) И ДокументЗаказКлиента.СуммаДокумента - ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОплатеОстаток, 0) >= ДокументЗаказКлиента.СуммаПредоплатыДоОтгрузки + ДокументЗаказКлиента.СуммаАвансаДоОбеспечения И ЕСТЬNULL(РасчетыСКлиентамиОстаткиНаДатуАктуальности.КОтгрузкеОстаток, 0) < 0 ТОГДА ИСТИНА КОГДА ДокументЗаказКлиента.Статус = ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.КОтгрузке) И ДокументЗаказКлиента.СуммаДокумента - ДокументЗаказКлиента.СуммаАвансаДоОбеспечения + ДокументЗаказКлиента.СуммаПредоплатыДоОтгрузки > 0 И ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОтгрузкеОстаток, 0) >= 0 И ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОплатеОстаток, 0) > 0 И РасчетыСКлиентамиОстаткиНаДатуАктуальности.КОплатеОстаток > 0 ТОГДА ИСТИНА ИНАЧЕ ЛОЖЬ КОНЕЦ КАК Просрочен, ВЫБОР КОГДА ДокументЗаказКлиента.Приоритет = ЗНАЧЕНИЕ(Перечисление.Приоритеты.Высокий) ТОГДА 0 КОГДА ДокументЗаказКлиента.Приоритет = ЗНАЧЕНИЕ(Перечисление.Приоритеты.Средний) ТОГДА 1 КОГДА ДокументЗаказКлиента.Приоритет = ЗНАЧЕНИЕ(Перечисление.Приоритеты.Низкий) ТОГДА 2 ИНАЧЕ 1 КОНЕЦ КАК КартинкаПриоритета, ВЫБОР КОГДА ДокументЗаказКлиента.ХозяйственнаяОперация <> ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПередачаНаКомиссию) И ДокументЗаказКлиента.Проведен И ДокументЗаказКлиента.Статус <> ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.НеСогласован) И ДокументЗаказКлиента.СуммаДокумента > 0 ТОГДА ВЫРАЗИТЬ(ДокументЗаказКлиента.СуммаДокумента - ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОплатеОстаток, 0) КАК ЧИСЛО(15, 2)) ИНАЧЕ 0 КОНЕЦ КАК СуммаОплаты, ВЫБОР КОГДА ДокументЗаказКлиента.ХозяйственнаяОперация <> ЗНАЧЕНИЕ(Перечисление.ХозяйственныеОперации.ПередачаНаКомиссию) И ДокументЗаказКлиента.Проведен И ДокументЗаказКлиента.Статус <> ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.НеСогласован) И ДокументЗаказКлиента.СуммаДокумента > 0 ТОГДА ВЫРАЗИТЬ((ДокументЗаказКлиента.СуммаДокумента - ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОплатеОстаток, 0)) * 100 / ДокументЗаказКлиента.СуммаДокумента КАК ЧИСЛО(15, 0)) ИНАЧЕ 0 КОНЕЦ КАК ПроцентОплаты, ВЫБОР КОГДА ДокументЗаказКлиента.Проведен И ДокументЗаказКлиента.Статус <> ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.НеСогласован) И ДокументЗаказКлиента.СуммаДокумента > 0 И ЕСТЬNULL(РасчетыСКлиентамиОстаткиНаДатуАктуальности.КОплатеОстаток, 0) > 0 ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(РасчетыСКлиентамиОстаткиНаДатуАктуальности.КОплатеОстаток, 0) КАК ЧИСЛО(15, 2)) ИНАЧЕ 0 КОНЕЦ КАК СуммаПросроченнойОплаты, ВЫБОР КОГДА ДокументЗаказКлиента.Проведен И ДокументЗаказКлиента.Статус <> ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.НеСогласован) И ДокументЗаказКлиента.Статус <> ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Согласован) И ДокументЗаказКлиента.СуммаДокумента > 0 ТОГДА ДокументЗаказКлиента.СуммаДокумента + ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОтгрузкеОстаток, 0) ИНАЧЕ 0 КОНЕЦ КАК СуммаОтгрузки, ВЫБОР КОГДА ДокументЗаказКлиента.Проведен И ДокументЗаказКлиента.Статус <> ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.НеСогласован) И ДокументЗаказКлиента.Статус <> ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.Согласован) И ДокументЗаказКлиента.СуммаДокумента > 0 ТОГДА ВЫРАЗИТЬ((ДокументЗаказКлиента.СуммаДокумента + ЕСТЬNULL(РасчетыСКлиентамиОстатки.КОтгрузкеОстаток, 0)) * 100 / ДокументЗаказКлиента.СуммаДокумента КАК ЧИСЛО(15, 0)) ИНАЧЕ 0 КОНЕЦ КАК ПроцентОтгрузки, ВЫБОР КОГДА ДокументЗаказКлиента.Проведен И ДокументЗаказКлиента.Статус <> ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.НеСогласован) И ДокументЗаказКлиента.СуммаДокумента > 0 И ЕСТЬNULL(РасчетыСКлиентамиОстатки.СуммаОстаток, 0) < 0 ТОГДА ВЫРАЗИТЬ(-ЕСТЬNULL(РасчетыСКлиентамиОстатки.СуммаОстаток, 0) КАК ЧИСЛО(15, 2)) ИНАЧЕ 0 КОНЕЦ КАК НашДолг, ВЫБОР КОГДА ДокументЗаказКлиента.Проведен И ДокументЗаказКлиента.Статус <> ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.НеСогласован) И ДокументЗаказКлиента.СуммаДокумента > 0 И ЕСТЬNULL(РасчетыСКлиентамиОстатки.СуммаОстаток, 0) > 0 ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(РасчетыСКлиентамиОстатки.СуммаОстаток, 0) КАК ЧИСЛО(15, 2)) ИНАЧЕ 0 КОНЕЦ КАК ДолгКлиента, ВЫБОР КОГДА ДокументЗаказКлиента.Проведен И ДокументЗаказКлиента.Статус <> ЗНАЧЕНИЕ(Перечисление.СтатусыЗаказовКлиентов.НеСогласован) И ДокументЗаказКлиента.СуммаДокумента > 0 ТОГДА ВЫБОР КОГДА ЕСТЬNULL(РасчетыСКлиентамиОстатки.СуммаОстаток, 0) > 0 ТОГДА ВЫРАЗИТЬ(ЕСТЬNULL(РасчетыСКлиентамиОстатки.СуммаОстаток, 0) * 100 / ДокументЗаказКлиента.СуммаДокумента КАК ЧИСЛО(15, 0)) ИНАЧЕ ВЫРАЗИТЬ(ЕСТЬNULL(-РасчетыСКлиентамиОстатки.СуммаОстаток, 0) * 100 / ДокументЗаказКлиента.СуммаДокумента КАК ЧИСЛО(15, 0)) КОНЕЦ ИНАЧЕ 0 КОНЕЦ КАК ПроцентДолга, СостоянияЭД.СостояниеВерсииЭД ИЗ Документ.ЗаказКлиента КАК ДокументЗаказКлиента ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияЭД КАК СостоянияЭД ПО (СостоянияЭД.СсылкаНаОбъект = ДокументЗаказКлиента.Ссылка) {ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.РасчетыСКлиентами.Остатки КАК РасчетыСКлиентамиОстатки ПО ДокументЗаказКлиента.Ссылка = РасчетыСКлиентамиОстатки.ЗаказКлиента ЛЕВОЕ СОЕДИНЕНИЕ РегистрНакопления.РасчетыСКлиентами.Остатки(КОНЕЦПЕРИОДА(&ДатаАктуальности, ДЕНЬ), ) КАК РасчетыСКлиентамиОстаткиНаДатуАктуальности ПО ДокументЗаказКлиента.Ссылка = РасчетыСКлиентамиОстаткиНаДатуАктуальности.ЗаказКлиента} |
|||
5
unknown181538
20.08.11
✎
01:21
|
ФормаСпискаДокументов.
|
|||
6
Okoons
20.08.11
✎
01:22
|
все все нашел , спасиб
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |