8.х Динамический список

Тема в разделе "Конфигурирование на платформе "1С:Предприятие 8"", создана пользователем prog-C1, 27 июн 2016.

  1. TopicStarter Overlay
    prog-C1
    Offline

    prog-C1

    Регистрация:
    27 июн 2016
    Сообщения:
    1
    Симпатии:
    0
    Баллы:
    1
    Добрый день!

    В бухгалтерии 3 необходимо сделать вывод дополнительной колонки в форме списка документа "Счет на оплату". В колонке должна отражаться сумма взаиморасчетов с контрагентом по счетам 62.01 и 62.02

    Дописали стандартный запрос:

    Код:
    ВЫБРАТЬ
    ВЫБОР
    КОГДА ДокументСчетНаОплатуПокупателю.ПометкаУдаления = ИСТИНА
    ТОГДА 2
    КОГДА ДокументСчетНаОплатуПокупателю.Проведен = ИСТИНА
    ТОГДА 1
    ИНАЧЕ 0
    КОНЕЦ КАК пСостояниеДокумента,
    ДокументСчетНаОплатуПокупателю.Ссылка КАК пСсылка,
    ДокументСчетНаОплатуПокупателю.ПометкаУдаления КАК пПометкаУдаления,
    ДокументСчетНаОплатуПокупателю.Номер КАК пНомер,
    ДокументСчетНаОплатуПокупателю.Дата,
    ДокументСчетНаОплатуПокупателю.Проведен КАК пПроведен,
    ДокументСчетНаОплатуПокупателю.Организация КАК пОрганизация,
    ДокументСчетНаОплатуПокупателю.Контрагент КАК пКонтрагент,
    ДокументСчетНаОплатуПокупателю.Комментарий КАК пКомментарий,
    ДокументСчетНаОплатуПокупателю.ВалютаДокумента КАК пВалютаДокумента,
    ДокументСчетНаОплатуПокупателю.СуммаДокумента КАК пСуммаДокумента,
    ВЫРАЗИТЬ(ЕСТЬNULL(СтатусыДокументов.Статус, ЗНАЧЕНИЕ(Перечисление.СтатусОплатыСчета.НеОплачен)) КАК Перечисление.СтатусОплатыСчета) КАК пСтатус,
    ЕСТЬNULL(СрокиОплатыДокументов.СрокОплаты, ДАТАВРЕМЯ(1, 1, 1)) КАК пСрокОплаты,
    СостоянияЭД.СостояниеВерсииЭД КАК пСостояниеВерсииЭД,
    ВЫБОР
    КОГДА ДокументыСОшибкамиПроверкиКонтрагентов.Документ ЕСТЬ NULL
    ТОГДА ЛОЖЬ
    ИНАЧЕ ИСТИНА
    КОНЕЦ КАК пСодержитНекорректныхКонтрагентов,
    НаличиеПрисоединенныхФайлов.ЕстьФайлы КАК пЕстьФайлы,
    ДокументСчетНаОплатуПокупателю.Оплата КАК пОплата
    ПОМЕСТИТЬ ВТДокумент
    ИЗ
    Документ.СчетНаОплатуПокупателю КАК ДокументСчетНаОплатуПокупателю
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СтатусыДокументов КАК СтатусыДокументов
    ПО ДокументСчетНаОплатуПокупателю.Организация = СтатусыДокументов.Организация
    И ДокументСчетНаОплатуПокупателю.Ссылка = СтатусыДокументов.Документ
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СрокиОплатыДокументов КАК СрокиОплатыДокументов
    ПО ДокументСчетНаОплатуПокупателю.Организация = СрокиОплатыДокументов.Организация
    И ДокументСчетНаОплатуПокупателю.Ссылка = СрокиОплатыДокументов.Документ
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.СостоянияЭД КАК СостоянияЭД
    ПО (СостоянияЭД.СсылкаНаОбъект = ДокументСчетНаОплатуПокупателю.Ссылка)
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.ДокументыСОшибкамиПроверкиКонтрагентов КАК ДокументыСОшибкамиПроверкиКонтрагентов
    ПО ДокументСчетНаОплатуПокупателю.Ссылка = ДокументыСОшибкамиПроверкиКонтрагентов.Документ
    И (&ИспользованиеПроверкиВозможно)
    ЛЕВОЕ СОЕДИНЕНИЕ РегистрСведений.НаличиеПрисоединенныхФайлов КАК НаличиеПрисоединенныхФайлов
    ПО (НаличиеПрисоединенныхФайлов.ОбъектСФайлами = ДокументСчетНаОплатуПокупателю.Ссылка)
    ;
    
    ////////////////////////////////////////////////////////////////////////////////
    ВЫБРАТЬ
    РеализацияТоваровУслуг.Ссылка КАК Ссылка,
    РеализацияТоваровУслуг.СчетНаОплатуПокупателю
    ПОМЕСТИТЬ ВТРеализация
    ИЗ
    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    ;
    
    ////////////////////////////////////////////////////////////////////////////////
    ВЫБРАТЬ
    СУММА(ХозрасчетныйОстатки.СуммаОстаток) КАК СуммаОстатокРачеты,
    ВТДокумент.пСсылка,
    ВТРеализация.Ссылка,
    ВТРеализация.СчетНаОплатуПокупателю
    ПОМЕСТИТЬ ОстаткиПКОРачеты
    ИЗ
    РегистрБухгалтерии.Хозрасчетный.Остатки(, Счет = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.РасчетыСПокупателями), , ) КАК ХозрасчетныйОстатки
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТДокумент КАК ВТДокумент
    ПО ХозрасчетныйОстатки.Организация = ВТДокумент.пОрганизация
    И ХозрасчетныйОстатки.Субконто1 = ВТДокумент.пКонтрагент
    И ХозрасчетныйОстатки.Субконто2 = ВТДокумент.пСсылка.ДоговорКонтрагента
    И (ХозрасчетныйОстатки.Субконто3 В
    (ВЫБРАТЬ
    РеализацияТоваровУслуг.Ссылка
    ИЗ
    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    ГДЕ
    РеализацияТоваровУслуг.СчетНаОплатуПокупателю = ВТДокумент.пСсылка
    И РеализацияТоваровУслуг.Проведен = ИСТИНА))
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТРеализация КАК ВТРеализация
    ПО (ВТДокумент.пСсылка = ВТРеализация.СчетНаОплатуПокупателю)
    
    СГРУППИРОВАТЬ ПО
    ВТДокумент.пСсылка,
    ВТРеализация.Ссылка,
    ВТРеализация.СчетНаОплатуПокупателю
    ;
    
    ////////////////////////////////////////////////////////////////////////////////
    ВЫБРАТЬ
    СУММА(ХозрасчетныйОстатки.СуммаОстаток) КАК СуммаОстатокАвансы,
    ВТРеализация.Ссылка,
    ВТРеализация.СчетНаОплатуПокупателю,
    ВТДокумент.пСсылка
    ПОМЕСТИТЬ ОстаткиПКОАвансы
    ИЗ
    РегистрБухгалтерии.Хозрасчетный.Остатки(, Счет = ЗНАЧЕНИЕ(ПланСчетов.Хозрасчетный.РасчетыПоАвансамПолученным), , ) КАК ХозрасчетныйОстатки
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТДокумент КАК ВТДокумент
    ПО ХозрасчетныйОстатки.Организация = ВТДокумент.пОрганизация
    И ХозрасчетныйОстатки.Субконто1 = ВТДокумент.пКонтрагент
    И ХозрасчетныйОстатки.Субконто2 = ВТДокумент.пСсылка.ДоговорКонтрагента
    И (ХозрасчетныйОстатки.Субконто3 В
    (ВЫБРАТЬ
    РеализацияТоваровУслуг.Ссылка
    ИЗ
    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    ГДЕ
    РеализацияТоваровУслуг.СчетНаОплатуПокупателю = ВТДокумент.пСсылка
    И РеализацияТоваровУслуг.Проведен = ИСТИНА))
    ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТРеализация КАК ВТРеализация
    ПО (ВТДокумент.пСсылка = ВТРеализация.СчетНаОплатуПокупателю)
    
    СГРУППИРОВАТЬ ПО
    ВТРеализация.Ссылка,
    ВТРеализация.СчетНаОплатуПокупателю,
    ВТДокумент.пСсылка
    ;
    
    ////////////////////////////////////////////////////////////////////////////////
    ВЫБРАТЬ
    ВТДокумент.пСостояниеДокумента КАК СостояниеДокумента,
    ВТДокумент.пСсылка КАК Ссылка,
    ВТДокумент.пПометкаУдаления КАК ПометкаУдаления,
    ВТДокумент.пНомер КАК Номер,
    ВТДокумент.Дата,
    ВТДокумент.пПроведен КАК Проведен,
    ВТДокумент.пОрганизация КАК Организация,
    ВТДокумент.пКонтрагент КАК Контрагент,
    ВТДокумент.пКомментарий КАК Комментарий,
    ВТДокумент.пВалютаДокумента КАК ВалютаДокумента,
    ВТДокумент.пСуммаДокумента КАК СуммаДокумента,
    ВТДокумент.пСтатус КАК Статус,
    ВТДокумент.пСрокОплаты КАК СрокОплаты,
    ВТДокумент.пСостояниеВерсииЭД КАК СостояниеВерсииЭД,
    ВТДокумент.пСодержитНекорректныхКонтрагентов КАК СодержитНекорректныхКонтрагентов,
    ВТДокумент.пЕстьФайлы КАК ЕстьФайлы,
    ВТДокумент.пОплата КАК Оплата,
    ВТДокумент.пСуммаДокумента - ЕСТЬNULL(ОстаткиПКОРачеты.СуммаОстатокРачеты,0) + ЕСТЬNULL(ОстаткиПКОАвансы.СуммаОстатокАвансы,0) КАК Долг
    ИЗ
    ВТДокумент КАК ВТДокумент
    ЛЕВОЕ СОЕДИНЕНИЕ ОстаткиПКОРачеты КАК ОстаткиПКОРачеты
    ПО ВТДокумент.пСсылка = ОстаткиПКОРачеты.СчетНаОплатуПокупателю
    ЛЕВОЕ СОЕДИНЕНИЕ ОстаткиПКОАвансы КАК ОстаткиПКОАвансы
    ПО ВТДокумент.пСсылка = ОстаткиПКОАвансы.СчетНаОплатуПокупателю
    

    Ошибка:
    Поле не найдено "Date"

    Помогите разобраться.
  2. roofless
    Offline

    roofless Опытный в 1С

    Регистрация:
    27 июн 2014
    Сообщения:
    260
    Симпатии:
    7
    Баллы:
    29
    не хило так дописано...
    дробите проблему, делайте поэтапно
  3. Dem0lisher
    Offline

    Dem0lisher Профессионал в 1С

    Регистрация:
    4 авг 2009
    Сообщения:
    1.028
    Симпатии:
    51
    Баллы:
    54
    Дык в динамических списках уже можно пакетные запросы писать?

Поделиться этой страницей