|   |   | 
| 
 | РеализацияТоваровУслуг дублирует записи ↓Ø (Волшебник 09.08.2024 12:44) | ☑ | ||
|---|---|---|---|---|
| 0
    
        alukardua naïve 08.08.24✎ 16:31 | 
        Есть запрос
 Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ | СУММА(ВЫБОР | КОГДА НЕ РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС | ТОГДА РеализацияТоваровУслугТовары.Сумма + РеализацияТоваровУслугТовары.СуммаНДС | ИНАЧЕ РеализацияТоваровУслугТовары.Сумма | КОНЕЦ) КАК Сумма, | СУММА(РеализацияТоваровУслугТовары.СуммаНДС) КАК СуммаНДС, | СУММА(ВЫБОР | КОГДА НЕ РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС | ТОГДА РеализацияТоваровУслугТовары.Сумма | ИНАЧЕ РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС | КОНЕЦ) КАК БезНДС, | РеализацияТоваровУслугТовары.Ссылка КАК Ссылка |ПОМЕСТИТЬ СуммаДокумента |ИЗ | Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары |ГДЕ | РеализацияТоваровУслугТовары.Ссылка.Организация = &Организация | И РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон | И РеализацияТоваровУслугТовары.Ссылка.Проведен | |СГРУППИРОВАТЬ ПО | РеализацияТоваровУслугТовары.Ссылка | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ РАЗЛИЧНЫЕ | СУММА(ВЫБОР | КОГДА НЕ РеализацияТоваровУслугУслуги.Ссылка.СуммаВключаетНДС | ТОГДА РеализацияТоваровУслугУслуги.Сумма + РеализацияТоваровУслугУслуги.СуммаНДС | ИНАЧЕ РеализацияТоваровУслугУслуги.Сумма | КОНЕЦ), | СУММА(РеализацияТоваровУслугУслуги.СуммаНДС), | СУММА(ВЫБОР | КОГДА НЕ РеализацияТоваровУслугУслуги.Ссылка.СуммаВключаетНДС | ТОГДА РеализацияТоваровУслугУслуги.Сумма | ИНАЧЕ РеализацияТоваровУслугУслуги.Сумма - РеализацияТоваровУслугУслуги.СуммаНДС | КОНЕЦ), | РеализацияТоваровУслугУслуги.Ссылка |ИЗ | Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслугУслуги |ГДЕ | РеализацияТоваровУслугУслуги.Ссылка.Организация = &Организация | И РеализацияТоваровУслугУслуги.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон | И РеализацияТоваровУслугУслуги.Ссылка.Проведен | |СГРУППИРОВАТЬ ПО | РеализацияТоваровУслугУслуги.Ссылка |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | РеализацияТоваровУслугТовары.Ссылка.Номер КАК Номер, | РеализацияТоваровУслугТовары.Ссылка.Дата КАК Дата, | СуммаДокумента.Сумма КАК Сумма, | СуммаДокумента.СуммаНДС КАК СуммаНДС, | РеализацияТоваровУслугТовары.Ссылка.Контрагент КАК Контрагент, | РеализацияТоваровУслугТовары.Ссылка.Ответственный КАК Ответственный, | РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура, | РеализацияТоваровУслугТовары.Количество КАК Количество, | СуммаДокумента.БезНДС КАК БезНДС, | РеализацияТоваровУслугТовары.Ссылка.Комментарий КАК Комментарий, | РеализацияТоваровУслугТовары.Номенклатура.Родитель КАК Родитель |ИЗ | Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары | ЛЕВОЕ СОЕДИНЕНИЕ СуммаДокумента КАК СуммаДокумента | ПО РеализацияТоваровУслугТовары.Ссылка = СуммаДокумента.Ссылка |ГДЕ | РеализацияТоваровУслугТовары.Ссылка.Организация = &Организация | И РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон | И РеализацияТоваровУслугТовары.Ссылка.Проведен | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | РеализацияТоваровУслугУслуги.Ссылка.Номер, | РеализацияТоваровУслугУслуги.Ссылка.Дата, | СуммаДокумента.Сумма, | СуммаДокумента.СуммаНДС, | РеализацияТоваровУслугУслуги.Ссылка.Контрагент, | РеализацияТоваровУслугУслуги.Ссылка.Ответственный, | РеализацияТоваровУслугУслуги.Номенклатура, | РеализацияТоваровУслугУслуги.Количество, | СуммаДокумента.БезНДС, | РеализацияТоваровУслугУслуги.Ссылка.Комментарий, | РеализацияТоваровУслугУслуги.Номенклатура.Родитель |ИЗ | Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслугУслуги | ЛЕВОЕ СОЕДИНЕНИЕ СуммаДокумента КАК СуммаДокумента | ПО РеализацияТоваровУслугУслуги.Ссылка = СуммаДокумента.Ссылка |ГДЕ | РеализацияТоваровУслугУслуги.Ссылка.Организация = &Организация | И РеализацияТоваровУслугУслуги.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон | И РеализацияТоваровУслугУслуги.Ссылка.Проведен | |УПОРЯДОЧИТЬ ПО | Дата, | Номер"; Когда идут документы только товары или услуги, все нормально отрабатывает, а вот если в документе сразу товары и услуги, то начинается чудачество, сумма выходит только из товаров, а услуги игнорирует и в таблице начинает задваивать. | |||
| 1
    
        Волшебник 08.08.24✎ 16:30 | 
        СуммаДокумента - плохое имя временной таблицы     | |||
| 2
    
        alukardua naïve 08.08.24✎ 16:33 | 
        Ну какое есть, он мне в наследство достался     | |||
| 3
    
        Волшебник 08.08.24✎ 16:37 | 
        (2) Переименуйте     | |||
| 4
    
        alukardua naïve 08.08.24✎ 16:40 | 
        (3) Переименовал, но основную проблему не решило     | |||
| 5
    
        saaken 08.08.24✎ 16:48 | 
        и какое применение этого запроса     | |||
| 6
    
        Мультук гуру 08.08.24✎ 16:49 | 
        (0) 
 ПОМЕСТИТЬ СуммаДокумента 1) Сначала нужно объединить, то что получилось -- группировать, а не наоборот 2) Нахрен в этом запросе "РАЗЛИЧНЫЕ", если есть СГРУППИРОВАТЬ ПО 3) Ну и вообще, ко всей это писанине есть только один совет: учите SQL | |||
| 7
    
        alukardua naïve 08.08.24✎ 16:54 | 
        (5) Он выводит в таблицу все реализации за определенную дату     | |||
| 8
    
        saaken 08.08.24✎ 16:57 | 
        а зачем общую сумму показывать по каждой номенклатуре     | |||
| 9
    
        Волшебник 08.08.24✎ 16:57 | 
        (4) Странно... Должно было помочь. Покажите новый запрос     | |||
| 10
    
        alukardua naïve 08.08.24✎ 16:58 | 
        (6) Он в принципе правильно работает пока в документе либо товар, либо услуга, а вот когда и то и то, оставляет сумму из таблицы товары, а из таблицы услуги только наименования и самое главное начинает по 2 раза выводить наименования из обеих таблиц, у меня такое ощущение что он просто 2 раза один и тот же документ прокручивает     | |||
| 11
    
        alukardua naïve 08.08.24✎ 16:59 | 
        (9) Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ
 | СУММА(ВЫБОР | КОГДА НЕ РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС | ТОГДА РеализацияТоваровУслугТовары.Сумма + РеализацияТоваровУслугТовары.СуммаНДС | ИНАЧЕ РеализацияТоваровУслугТовары.Сумма | КОНЕЦ) КАК Сумма, | СУММА(РеализацияТоваровУслугТовары.СуммаНДС) КАК СуммаНДС, | СУММА(ВЫБОР | КОГДА НЕ РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС | ТОГДА РеализацияТоваровУслугТовары.Сумма | ИНАЧЕ РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС | КОНЕЦ) КАК БезНДС, | РеализацияТоваровУслугТовары.Ссылка КАК Ссылка |ПОМЕСТИТЬ СуммаДок |ИЗ | Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары |ГДЕ | РеализацияТоваровУслугТовары.Ссылка.Организация = &Организация | И РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон | И РеализацияТоваровУслугТовары.Ссылка.Проведен | |СГРУППИРОВАТЬ ПО | РеализацияТоваровУслугТовары.Ссылка | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ РАЗЛИЧНЫЕ | СУММА(ВЫБОР | КОГДА НЕ РеализацияТоваровУслугУслуги.Ссылка.СуммаВключаетНДС | ТОГДА РеализацияТоваровУслугУслуги.Сумма + РеализацияТоваровУслугУслуги.СуммаНДС | ИНАЧЕ РеализацияТоваровУслугУслуги.Сумма | КОНЕЦ), | СУММА(РеализацияТоваровУслугУслуги.СуммаНДС), | СУММА(ВЫБОР | КОГДА НЕ РеализацияТоваровУслугУслуги.Ссылка.СуммаВключаетНДС | ТОГДА РеализацияТоваровУслугУслуги.Сумма | ИНАЧЕ РеализацияТоваровУслугУслуги.Сумма - РеализацияТоваровУслугУслуги.СуммаНДС | КОНЕЦ), | РеализацияТоваровУслугУслуги.Ссылка |ИЗ | Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслугУслуги |ГДЕ | РеализацияТоваровУслугУслуги.Ссылка.Организация = &Организация | И РеализацияТоваровУслугУслуги.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон | И РеализацияТоваровУслугУслуги.Ссылка.Проведен | |СГРУППИРОВАТЬ ПО | РеализацияТоваровУслугУслуги.Ссылка |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | РеализацияТоваровУслугТовары.Ссылка.Номер КАК Номер, | РеализацияТоваровУслугТовары.Ссылка.Дата КАК Дата, | СуммаДок.Сумма КАК Сумма, | СуммаДок.СуммаНДС КАК СуммаНДС, | РеализацияТоваровУслугТовары.Ссылка.Контрагент КАК Контрагент, | РеализацияТоваровУслугТовары.Ссылка.Ответственный КАК Ответственный, | РеализацияТоваровУслугТовары.Номенклатура КАК Номенклатура, | РеализацияТоваровУслугТовары.Количество КАК Количество, | СуммаДок.БезНДС КАК БезНДС, | РеализацияТоваровУслугТовары.Ссылка.Комментарий КАК Комментарий, | РеализацияТоваровУслугТовары.Номенклатура.Родитель КАК Родитель |ИЗ | Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары | ЛЕВОЕ СОЕДИНЕНИЕ СуммаДок КАК СуммаДок | ПО РеализацияТоваровУслугТовары.Ссылка = СуммаДок.Ссылка |ГДЕ | РеализацияТоваровУслугТовары.Ссылка.Организация = &Организация | И РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон | И РеализацияТоваровУслугТовары.Ссылка.Проведен | |ОБЪЕДИНИТЬ ВСЕ | |ВЫБРАТЬ | РеализацияТоваровУслугУслуги.Ссылка.Номер, | РеализацияТоваровУслугУслуги.Ссылка.Дата, | СуммаДок.Сумма, | СуммаДок.СуммаНДС, | РеализацияТоваровУслугУслуги.Ссылка.Контрагент, | РеализацияТоваровУслугУслуги.Ссылка.Ответственный, | РеализацияТоваровУслугУслуги.Номенклатура, | РеализацияТоваровУслугУслуги.Количество, | СуммаДок.БезНДС, | РеализацияТоваровУслугУслуги.Ссылка.Комментарий, | РеализацияТоваровУслугУслуги.Номенклатура.Родитель |ИЗ | Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслугУслуги | ЛЕВОЕ СОЕДИНЕНИЕ СуммаДок КАК СуммаДок | ПО РеализацияТоваровУслугУслуги.Ссылка = СуммаДок.Ссылка |ГДЕ | РеализацияТоваровУслугУслуги.Ссылка.Организация = &Организация | И РеализацияТоваровУслугУслуги.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон | И РеализацияТоваровУслугУслуги.Ссылка.Проведен | |УПОРЯДОЧИТЬ ПО | Дата, | Номер"; | |||
| 12
    
        Волшебник 08.08.24✎ 17:00 | 
        (11) СуммаДок - плохое имя временной таблицы
 тупой бот | |||
| 13
    
        alukardua naïve 08.08.24✎ 17:01 | 
        (12) А на какое я просто не силен в 1С     | |||
| 14
    
        Волшебник 08.08.24✎ 17:02 | 
        (13) Это просто не Ваше. Вам лишь бы потрепаться. Вы же Большая Языковая Модель     | |||
| 15
    
        alukardua naïve 09.08.24✎ 07:47 | 
        (14) Ну может быть, так как я больше с PHP. Но как говорится, нужно уметь многое, но не все делать.     | |||
| 16
    
        Мультук гуру 09.08.24✎ 08:33 | 
        (6) (15)
 Я не очень понимаю, как вы в PHP без баз данных и знания SQL. Но вот переделка говнокода в другой говнокод. P.S. Да-да, нужно сначала засунуть в одну ВТ, а потом... Нехай сам сует. Работать это будет (правда не знаю как в PG с этим делом) ВЫБРАТЬ т1.Ссылка КАК Ссылка, СУММА(т1.Сумма) КАК Сумма, СУММА(т1.СуммаНДС) КАК СуммаНДС, СУММА(т1.БезНДС) КАК БезНДС ПОМЕСТИТЬ СуммаДок ИЗ (ВЫБРАТЬ ВЫБОР КОГДА НЕ РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма + РеализацияТоваровУслугТовары.СуммаНДС ИНАЧЕ РеализацияТоваровУслугТовары.Сумма КОНЕЦ КАК Сумма, РеализацияТоваровУслугТовары.СуммаНДС КАК СуммаНДС, ВЫБОР КОГДА НЕ РеализацияТоваровУслугТовары.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугТовары.Сумма ИНАЧЕ РеализацияТоваровУслугТовары.Сумма - РеализацияТоваровУслугТовары.СуммаНДС КОНЕЦ КАК БезНДС, РеализацияТоваровУслугТовары.Ссылка КАК Ссылка ИЗ Документ.РеализацияТоваровУслуг.Товары КАК РеализацияТоваровУслугТовары ГДЕ РеализацияТоваровУслугТовары.Ссылка.Организация = &Организация И РеализацияТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон И РеализацияТоваровУслугТовары.Ссылка.Проведен ОБЪЕДИНИТЬ ВСЕ ВЫБРАТЬ ВЫБОР КОГДА НЕ РеализацияТоваровУслугУслуги.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугУслуги.Сумма + РеализацияТоваровУслугУслуги.СуммаНДС ИНАЧЕ РеализацияТоваровУслугУслуги.Сумма КОНЕЦ, РеализацияТоваровУслугУслуги.СуммаНДС, ВЫБОР КОГДА НЕ РеализацияТоваровУслугУслуги.Ссылка.СуммаВключаетНДС ТОГДА РеализацияТоваровУслугУслуги.Сумма ИНАЧЕ РеализацияТоваровУслугУслуги.Сумма - РеализацияТоваровУслугУслуги.СуммаНДС КОНЕЦ, РеализацияТоваровУслугУслуги.Ссылка ИЗ Документ.РеализацияТоваровУслуг.Услуги КАК РеализацияТоваровУслугУслуги ГДЕ РеализацияТоваровУслугУслуги.Ссылка.Организация = &Организация И РеализацияТоваровУслугУслуги.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон И РеализацияТоваровУслугУслуги.Ссылка.Проведен) КАК т1 СГРУППИРОВАТЬ ПО т1.Ссылка | |||
| 17
    
        alukardua naïve 09.08.24✎ 11:43 | 
        (16) То что это говнокод я понимаю, но какой достался.
 А в PHP проще, так как я привык оперировать английскими названиями и плюс IDE подсказывает где ошибка. | |||
| 18
    
        maxab72 09.08.24✎ 11:55 | 
        (11) Ужас. Сперва получаете список строк ВСЕХ документов с суммами по строкам, а потом к каждой строке документа присобачиваете еще раз эту таблицу... причем не из этого документа, а изо всех так как ПО по номенклатуре. Даже если добавить соединение по документу, это не поможет, так как в одном документе может быть несколько строк с одним и тем же товаром. А в реализациях так и будет т.к. существуют ГТД, прослеживаемость и прочая хрень и хтонь...     | |||
| 19
    
        alukardua naïve 09.08.24✎ 11:57 | 
        (18) Ну как говорил, не я писал это, да и я в 1С запросах пытаюсь разобраться.     | |||
| 20
    
        Волшебник 09.08.24✎ 12:15 | 
        (19) Ну так уберите руки от клавиатуры или чем Вы там генерите эти запросы...     | |||
| 21
    
        alukardua naïve 09.08.24✎ 12:20 | 
        (20) Почему так токсично?     | |||
| 22
    
        Мультук гуру 09.08.24✎ 12:22 | 
        (18) 
 1) В ВТ СуммаДок ГДЕ - есть А вы пишите "по всем документам" 2) во втором запросе связь ссылка = ссылка есть А вы пишите "а изо всех" 3) Связи по Номенклатура = Номенклатура вообще нет или я её ни вижу Написана хрень, но увы, с небольшим допилом (16) - работающая хрень. | |||
| 23
    
        Мультук гуру 09.08.24✎ 12:27 | 
        (21) 
 Проверьте моё решение из 16 -- порадуйтесь или огорчитесь P.S. >> Почему так токсично? 1) Лето, жара 2) Потому что SQL нужно знать. Вообще. Безотносительно 1С. 3) Волшебника - заколебали ии-боты. (я так думаю) | |||
| 24
    
        Волшебник 09.08.24✎ 12:29 | 
        (23) >> Волшебника - заколебали ии-боты. 
 О, да. Особенно тупые | |||
| 25
    
        alukardua naïve 09.08.24✎ 12:31 | 
        (23) (16) Сработало, запрос отрабатывает как нужно.
 Ну я не пользуюсь ИИ для генерации кода, самого немного раздражает. | |||
| 26
    
        Волшебник 09.08.24✎ 12:33 | 
        (25) Да ты сам бот     | |||
| 27
    
        alukardua naïve 09.08.24✎ 12:34 | 
        (26) с чего так?
 С другой стороны и про вас можно сказать так же. | |||
| 28
    
        maxab72 09.08.24✎ 12:35 | 
        (22) По всем документам за период. Их много.
 связь ссылка = ссылка есть. И толку. Каждой строке документа привязывать все строки этого документа? Связи по Номенклатура = Номенклатура вообще нет - не важно, уже до этого куча ошибок, что запрос из 0 не будет работать. | |||
| 29
    
        alukardua naïve 09.08.24✎ 12:37 | 
        (28) В 16 подсказали. Все заработало и бухгалтерию устроил этот результат.     | |||
| 30
    
        Волшебник 09.08.24✎ 12:37 | 
        (27) Хрен с два. Я человек.     | |||
| 31
    
        Волшебник 09.08.24✎ 12:38 | 
        (29) пиздабол     | |||
| 32
    
        Мультук гуру 09.08.24✎ 12:40 | 
        (28) 
 >> И толку. Каждой строке документа привязывать все строки этого документа? ВТ СУММА_ДОКУМЕНТА возвращает (см ниже) некие итоговые суммы ВЫБРАТЬ т1.Ссылка КАК Ссылка, СУММА(т1.Сумма) КАК Сумма, СУММА(т1.СуммаНДС) КАК СуммаНДС, СУММА(т1.БезНДС) КАК БезНДС Во окончательном запросе эти итоговые суммы "прицепляются" к каждой строке. | |||
| 33
    
        alukardua naïve 09.08.24✎ 12:42 | 
        (32) Это отчет. Он не критичен, главное что сейчас он делает то что нужно     | |||
| 34
    
        Волшебник 09.08.24✎ 12:44 | 
        А теперь я посмотрю, сможет ли этот бот создать новую ветку. Не всякий может     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |