Имя: Пароль:
1C
1С v8
Имя поля
,
0 Grigory123456789
 
23.04.15
15:35
"ВЫБРАТЬ
    |    РеализацияТоваровУслуг.Контрагент,
    |    РеализацияТоваровУслуг.ДатаОплаты,
    |    РеализацияТоваровУслуг.Ссылка КАК ДокументРеализации,
    |    РеализацияТоваровУслуг.СуммаДокумента,
    |    ВЫБОР
    |        КОГДА РеализацияТоваровУслуг.Ссылка = ПриходныйКассовыйОрдер.ДокументОснование.Ссылка
    |            ТОГДА ПриходныйКассовыйОрдер.СуммаДокумента
    |        ИНАЧЕ 0
    |    КОНЕЦ КАК РасчетНаличными,
    |    ПриходныйКассовыйОрдер.ДокументОснование.Ссылка,
    |    ПриходныйКассовыйОрдер.Ссылка КАК ДокументОплатаНаличными,
    |    ПлатежноеПоручениеВходящее.Ссылка КАК ДокументОплатаБезналом,
    |    ПлатежноеПоручениеВходящее.СуммаДокумента КАК БезналичныйРасчет,
    |    ВЫБОР
    |        КОГДА &ТекДата > РеализацияТоваровУслуг.ДатаОплаты
    |                И ПриходныйКассовыйОрдер.Дата > РеализацияТоваровУслуг.ДатаОплаты
    |                И ПлатежноеПоручениеВходящее.Дата > РеализацияТоваровУслуг.ДатаОплаты
    |            ТОГДА ""Платеж просрочен""
    |    КОНЕЦ КАК СтатусПлатежа,
    |    ВозвратТоваровОтПокупателя.Ссылка как ДокуменВозврата,
    |    ВозвратТоваровОтПокупателя.СуммаДокумента КАК СуммаВозврата
    |ВЫБОР КОГДА (РасчетНаличными=СуммаДокумента или БезналичныйРасчет=СуммаДокумента или РасчетНаличными+БезналичныйРасчет=СуммаДокумента) Тогда
    |null
    |иначе
    |РАЗНОСТЬДАТ(НачалоПериода(РеализацияТоваровУслуг.ДатаОплаты,ДЕНЬ),НачалоПериода(&конецпериода,ДЕНЬ),ДЕНЬ)
    |Конец
    |    ИЗ
    |    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
    |        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПриходныйКассовыйОрдер КАК ПриходныйКассовыйОрдер
    |        ПО РеализацияТоваровУслуг.Ссылка = ПриходныйКассовыйОрдер.ДокументОснование.Ссылка
    |        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПлатежноеПоручениеВходящее КАК ПлатежноеПоручениеВходящее
    |        ПО РеализацияТоваровУслуг.Ссылка = ПлатежноеПоручениеВходящее.ДокументОснование.Ссылка
    |        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ВозвратТоваровОтПокупателя КАК ВозвратТоваровОтПокупателя
    |        ПО РеализацияТоваровУслуг.Ссылка = ВозвратТоваровОтПокупателя.ДокументОснование
|    ГДЕ
    |    РеализацияТоваровУслуг.Дата МЕЖДУ &НачалоПериода И &КонецПериода
    |    И РеализацияТоваровУслуг.ПометкаУдаления = &ПометкаУдаления
    |    И РеализацияТоваровУслуг.Проведен = &Проведен";



выдает ошибку на РасчетНаличными=СуммаДокумента или БезналичныйРасчет, типа нет таких полей, что делаю не так?
1 ЧеловекДуши
 
23.04.15
15:36
(0) Попробуй первоначальный запрос написать через Консоль запросов :)
2 ЧеловекДуши
 
23.04.15
15:37
+(0) ВозвратТоваровОтПокупателя.  
1С только через псевдо имя понимает :)
3 asady
 
23.04.15
15:37
(1) не учи человека легкими путями идти к истине

(0) поставь перед алиасами полей алиасы таблиц и точку между ними
4 DrShad
 
23.04.15
15:38
|    ВозвратТоваровОтПокупателя.СуммаДокумента КАК СуммаВозврата

и тут запятую забыл
5 ЧеловекДуши
 
23.04.15
15:38
(0) >>>> ВЫБОР
    |        КОГДА РеализацияТоваровУслуг.Ссылка = ПриходныйКассовыйОрдер.ДокументОснование.Ссылка
    |            ТОГДА ПриходныйКассовыйОрдер.СуммаДокумента
    |        ИНАЧЕ 0
    |    КОНЕЦ КАК РасчетНаличными,


Жесть, кто тебя так научил оперировать значениями полей? %)
6 ЧеловекДуши
 
23.04.15
15:38
(3) Не поможет, ТС запутался :)
7 ЧеловекДуши
 
23.04.15
15:39
+(5) Это к выражению "РасчетНаличными=СуммаДокумента"
8 DrShad
 
23.04.15
15:41
вообще-то запрос доставляет просто :))))
9 Grigory123456789
 
23.04.15
15:53
запрос не мой
10 DrShad
 
23.04.15
15:54
(9) это радовает, но вот то что с ним сделал ты - огорчает
11 Grigory123456789
 
23.04.15
15:54
поставь перед алиасами полей алиасы таблиц и точку между ними - не понял , подсобите плиз, мозг уже поломатый к вечеру
12 Grigory123456789
 
23.04.15
15:55
ВЫБРАТЬ
    РеализацияТоваровУслуг.Контрагент,
    РеализацияТоваровУслуг.ДатаОплаты,
    РеализацияТоваровУслуг.Ссылка КАК ДокументРеализации,
    РеализацияТоваровУслуг.СуммаДокумента,
    ВЫБОР
        КОГДА РеализацияТоваровУслуг.Ссылка = ПриходныйКассовыйОрдер.ДокументОснование.Ссылка
            ТОГДА ПриходныйКассовыйОрдер.СуммаДокумента
        ИНАЧЕ 0
    КОНЕЦ КАК РасчетНаличными,
    ПриходныйКассовыйОрдер.ДокументОснование.Ссылка,
    ПриходныйКассовыйОрдер.Ссылка КАК ДокументОплатаНаличными,
    ПлатежноеПоручениеВходящее.Ссылка КАК ДокументОплатаБезналом,
    ПлатежноеПоручениеВходящее.СуммаДокумента КАК БезналичныйРасчет,
    ВЫБОР
        КОГДА &ТекДата > РеализацияТоваровУслуг.ДатаОплаты
                И ПриходныйКассовыйОрдер.Дата > РеализацияТоваровУслуг.ДатаОплаты
                И ПлатежноеПоручениеВходящее.Дата > РеализацияТоваровУслуг.ДатаОплаты
            ТОГДА "Платеж просрочен"
    КОНЕЦ КАК СтатусПлатежа,
    ВозвратТоваровОтПокупателя.Ссылка как ДокуменВозврата,
    ВозвратТоваровОтПокупателя.СуммаДокумента КАК СуммаВозврата
ИЗ
    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПриходныйКассовыйОрдер КАК ПриходныйКассовыйОрдер
        ПО РеализацияТоваровУслуг.Ссылка = ПриходныйКассовыйОрдер.ДокументОснование.Ссылка
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПлатежноеПоручениеВходящее КАК ПлатежноеПоручениеВходящее
        ПО РеализацияТоваровУслуг.Ссылка = ПлатежноеПоручениеВходящее.ДокументОснование.Ссылка
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ВозвратТоваровОтПокупателя КАК ВозвратТоваровОтПокупателя
        ПО РеализацияТоваровУслуг.Ссылка = ВозвратТоваровОтПокупателя.ДокументОснование
ГДЕ
    РеализацияТоваровУслуг.Дата МЕЖДУ &НачалоПериода И &КонецПериода
    И РеализацияТоваровУслуг.ПометкаУдаления = &ПометкаУдаления
    И РеализацияТоваровУслуг.Проведен = &Проведен

это оригинал
13 Cyberhawk
 
23.04.15
16:00
(12) А что требуется-то?
14 Grigory123456789
 
23.04.15
16:06
нужно запустить вот этот кусочек
|ВЫБОР КОГДА (РасчетНаличными=СуммаДокумента или БезналичныйРасчет=СуммаДокумента или РасчетНаличными+БезналичныйРасчет=СуммаДокумента) Тогда
    |null
    |иначе
    |РАЗНОСТЬДАТ(НачалоПериода(РеализацияТоваровУслуг.ДатаОплаты,ДЕНЬ),НачалоПериода(&конецпериода,ДЕНЬ),ДЕНЬ)
15 DrShad
 
23.04.15
16:06
|ВЫБОР КОГДА (ВЫБОР
        КОГДА РеализацияТоваровУслуг.Ссылка = ПриходныйКассовыйОрдер.ДокументОснование.Ссылка
            ТОГДА ПриходныйКассовыйОрдер.СуммаДокумента
        ИНАЧЕ 0
    КОНЕЦ=РеализацияТоваровУслуг.СуммаДокументаили ПлатежноеПоручениеВходящее.СуммаДокумента=СуммаДокумента или ВЫБОР
        КОГДА РеализацияТоваровУслуг.Ссылка = ПриходныйКассовыйОрдер.ДокументОснование.Ссылка
            ТОГДА ПриходныйКассовыйОрдер.СуммаДокумента
        ИНАЧЕ 0
    КОНЕЦ КАК РасчетНаличными+ПлатежноеПоручениеВходящее.СуммаДокумента=СуРеализацияТоваровУслуг.СуммаДокумента) Тогда
    |null
    |иначе
    |РАЗНОСТЬДАТ(НачалоПериода(РеализацияТоваровУслуг.ДатаОплаты,ДЕНЬ),НачалоПериода(&конецпериода,ДЕНЬ),ДЕНЬ)
    |Конец
16 DrShad
 
23.04.15
16:07
ну и про эти символы не забыть "|"
17 DrShad
 
23.04.15
16:07
и вместо null лучше ДАТАВРЕМЯ(1,1,1,0,0,0)
18 Grigory123456789
 
23.04.15
16:15
ВЫБРАТЬ
    РеализацияТоваровУслуг.Контрагент,
    РеализацияТоваровУслуг.ДатаОплаты,
    РеализацияТоваровУслуг.Ссылка КАК ДокументРеализации,
    РеализацияТоваровУслуг.СуммаДокумента,
    ВЫБОР
        КОГДА РеализацияТоваровУслуг.Ссылка = ПриходныйКассовыйОрдер.ДокументОснование.Ссылка
            ТОГДА ПриходныйКассовыйОрдер.СуммаДокумента
        ИНАЧЕ 0
    КОНЕЦ КАК РасчетНаличными,
    ПриходныйКассовыйОрдер.ДокументОснование.Ссылка,
    ПриходныйКассовыйОрдер.Ссылка КАК ДокументОплатаНаличными,
    ПлатежноеПоручениеВходящее.Ссылка КАК ДокументОплатаБезналом,
    ПлатежноеПоручениеВходящее.СуммаДокумента КАК БезналичныйРасчет,
    ВЫБОР
        КОГДА &ТекДата > РеализацияТоваровУслуг.ДатаОплаты
                И ПриходныйКассовыйОрдер.Дата > РеализацияТоваровУслуг.ДатаОплаты
                И ПлатежноеПоручениеВходящее.Дата > РеализацияТоваровУслуг.ДатаОплаты
            ТОГДА "Платеж просрочен"
    КОНЕЦ КАК СтатусПлатежа,
    ВозвратТоваровОтПокупателя.Ссылка КАК ДокуменВозврата,
    ВозвратТоваровОтПокупателя.СуммаДокумента КАК СуммаВозврата,
    ВЫБОР
        КОГДА ВЫБОР
                    КОГДА РеализацияТоваровУслуг.Ссылка = ПриходныйКассовыйОрдер.ДокументОснование.Ссылка
                        ТОГДА ПриходныйКассовыйОрдер.СуммаДокумента
                    ИНАЧЕ 0
                КОНЕЦ = РеализацияТоваровУслуг.СуммаДокумента
                ИЛИ ПлатежноеПоручениеВходящее.СуммаДокумента = РеализацияТоваровУслуг.СуммаДокумента
                ИЛИ ВЫБОР
                    КОГДА РеализацияТоваровУслуг.Ссылка = ПриходныйКассовыйОрдер.ДокументОснование.Ссылка
                        ТОГДА ПриходныйКассовыйОрдер.СуммаДокумента
                    ИНАЧЕ 0
                КОНЕЦ + ПлатежноеПоручениеВходящее.СуммаДокумента = РеализацияТоваровУслуг.СуммаДокумента
            ТОГДА NULL
        ИНАЧЕ РАЗНОСТЬДАТ(НАЧАЛОПЕРИОДА(РеализацияТоваровУслуг.ДатаОплаты, ДЕНЬ), НАЧАЛОПЕРИОДА(&конецпериода, ДЕНЬ), ДЕНЬ)
    КОНЕЦ КАК КоличествоДнейПросрочки
ИЗ
    Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПриходныйКассовыйОрдер КАК ПриходныйКассовыйОрдер
        ПО РеализацияТоваровУслуг.Ссылка = ПриходныйКассовыйОрдер.ДокументОснование.Ссылка
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ПлатежноеПоручениеВходящее КАК ПлатежноеПоручениеВходящее
        ПО РеализацияТоваровУслуг.Ссылка = ПлатежноеПоручениеВходящее.ДокументОснование.Ссылка
        ЛЕВОЕ СОЕДИНЕНИЕ Документ.ВозвратТоваровОтПокупателя КАК ВозвратТоваровОтПокупателя
        ПО РеализацияТоваровУслуг.Ссылка = ВозвратТоваровОтПокупателя.ДокументОснование
ГДЕ
    РеализацияТоваровУслуг.Дата МЕЖДУ &НачалоПериода И &КонецПериода
    И РеализацияТоваровУслуг.ПометкаУдаления = &ПометкаУдаления
    И РеализацияТоваровУслуг.Проведен = &Проведен

готовый результат
19 DrShad
 
23.04.15
16:38
можно было просто спасибо сказать, да и NULL убери