Объединить поля(ячейки) в СКД #804759


#0 by reznik911
Добрый день! Конфигурация не типовая, Платформа 8.3. Есть отчет в СКД "Реестр расходных накладных". На основании накладной создается сопроводительная накладная(СНН), может быть одна может несколько разбитых по вагонам. Так вот, проблема в том, что когда отчет формируется он дублирует строки если созданы несколько СНН на одну накладную (тем самым удваивает и  суммы документов) потому что номера СНН разные, остальное идентично Можно ли как ни будь сделать так, чтобы в таких ситуациях в поле "номер СНН" прописались номера через запятую? Пробовал в вычисляемы поля написать условие "Выбор когда НакладнаяНомер = НакладнаяНомер Тогда "тут думаю будет конкатенация строк типа НомерСНН1, НомерСНН2" Иначе Номер СНН Скриншоты: Код:     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная ВЫБРАТЬ     ВЫБОР         КОГДА РасходнаяНакладная.ДокументОснование ССЫЛКА Документ.РаспоряжениеSAP     ВЫБОР         КОГДА РасходнаяНакладная.ДокументОснование ССЫЛКА Документ.РаспоряжениеSAP ИЗ ГДЕ     РасходнаяНакладная.Дата МЕЖДУ &НачалоПериода И &КонецПериода     И НЕ РасходнаяНакладная.ПометкаУдаления     И НЕ РасходнаяНакладная.Проведен ; {ГДЕ
#0 by reznik911
Добрый день! Конфигурация не типовая, Платформа 8.3. Есть отчет в СКД "Реестр расходных накладных". На основании накладной создается сопроводительная накладная(СНН), может быть одна может несколько разбитых по вагонам. Так вот, проблема в том, что когда отчет формируется он дублирует строки если созданы несколько СНН на одну накладную (тем самым удваивает и  суммы документов) потому что номера СНН разные, остальное идентично Можно ли как ни будь сделать так, чтобы в таких ситуациях в поле "номер СНН" прописались номера через запятую? Пробовал в вычисляемы поля написать условие "Выбор когда НакладнаяНомер = НакладнаяНомер Тогда "тут думаю будет конкатенация строк типа НомерСНН1, НомерСНН2" Иначе Номер СНН Скриншоты: Код:     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная     ВЫБОР         КОГДА ТоварыРеализацияОборотыОбороты.Регистратор ССЫЛКА Документ.РасходнаяНакладная ВЫБРАТЬ     ВЫБОР         КОГДА РасходнаяНакладная.ДокументОснование ССЫЛКА Документ.РаспоряжениеSAP     ВЫБОР         КОГДА РасходнаяНакладная.ДокументОснование ССЫЛКА Документ.РаспоряжениеSAP ИЗ ГДЕ     РасходнаяНакладная.Дата МЕЖДУ &НачалоПериода И &КонецПериода     И НЕ РасходнаяНакладная.ПометкаУдаления     И НЕ РасходнаяНакладная.Проведен ; {ГДЕ
#1 by DrShad
ВЫЧИСЛИТЬВРЫЖЕНИЕСГРУППИРОВКОЙТАБЛИЦАЗНАЧЕНИЙ(...)
#2 by reznik911
Выбор когда НакладнаяНомер = НакладнаяНомер Тогда ВЫЧИСЛИТЬВРЫЖЕНИЕСГРУППИРОВКОЙТАБЛИЦАЗНАЧЕНИЙ("НомерСНН","НомерСНН") Иначе Номер СНН? проблема не в слиянии строк, а в том что условие проверки не работает. Для легкой проверка я сделал Выбор когда НакладнаяНомер = НакладнаяНомер Тогда 1 Иначе 0. Он всем строчкам присвоил 1 , должно было быть один "1" , остальные по 0
#3 by reznik911
или ВЫЧИСЛИТЬВРЫЖЕНИЕСГРУППИРОВКОЙТАБЛИЦАЗНАЧЕНИЙ("НомерСНН" КАК Номер СНН,,"НакладнаяНомер=НакладнаяНомер")?
#4 by DrShad
читай справку по функциям языка выражений СКД
#5 by reznik911
чесслово прочел, не понял, куда совать условие
#6 by reznik911
Пробую так получается как на скрине (см. вложение) Выбор когда НакладнаяНомер = НакладнаяНомер Тогда ВычислитьВыражениеСГруппировкойТаблицаЗначений("НомерСНН, НомерСНН", "Номенклатура") Иначе НомерСНН Конец
#7 by DrShad
уже лучше
#8 by reznik911
условие работает, но как сделать НомерСНН, НомерСНН+1 следущий элемент с таким же номером документа?
#9 by DrShad
поиграйся со вторым параметром этого метода
#10 by DrShad
и не нужно там никакого условия
#11 by reznik911
ВыражениеПолейГруппировки - "Номенклатура" с этим?
#12 by DrShad
ну да
#13 by reznik911
условие работает, но отображается также
#14 by DrShad
нахрена условие?
#15 by reznik911
а как он поймет что нужно применить только к тем записям где номер накладной один, а номера СНН разные
#16 by DrShad
*рукалицо*
#17 by DrShad
у тебя запрос построен некорректно для вывода инфы как ты хочешь
#18 by reznik911
как это? что ему мешает?
#19 by reznik911
полностью менять запрос?(((
#20 by DrShad
можно начать с настроек
#21 by reznik911
так настройки не верны или запрос?  А то кусками не понятно
#22 by DrShad
начнем сначала, что вам известно про СКД?
#23 by DrShad
+ в части результирующего запроса?
#24 by reznik911
в целом много чего. Всмысле на стадии вывода отчёта процессором вывода?
#25 by reznik911
в запросе я использовал Вт и вложенные запросы чтобы в итоге получить и не проверенные документы
#26 by DrShad
во-первых не нужно дважды выбирать одно и то же поле в вычислении во-вторых ну ты же видишь, что у тебя по выборке СНН всегда одно
#27 by reznik911
по первому ясно что номерснн 2 раза тупо дублирует, просто не знаю как выбрать следующий элемент. По второму опять же да, он видит что номер равен самому себе поэтому тупо через запятую пишет.  Только не знаю как это перебороть. Поэтому изначально я прибегнул к условию что если он перебором определит одинаковые  номера снн,  то через запятую пропишите. Но увы функция ы выражении проверят построчно.  Оттуда и такой исход Выход либо применять другие функции либо уже в запросе как то вытащить или обозначить признак когда существует 2 снн на одну накладную
#28 by DrShad
[Выход либо применять другие функции либо уже в запросе как то вытащить] я и писал что запрос не верный, а уж начальный или скорректированный СКД решать вам
#29 by reznik911
менять запрос хочется в последнюю очередь поэтому ищу другие варианты
#30 by DrShad
Настройки влияют на результирующий запрос
#31 by reznik911
группировки и Детальная запись?
#32 by DrShad
Попробуйте, лишний этот опыт не будет
#33 by reznik911
попробуем завтра отпишусь
#34 by DrShad
Пизнец, кто их пускает в 1С?
#35 by reznik911
не понял
#36 by reznik911
че то ничем не помогло
#37 by DrShad
результат запроса из консоли покажи
#38 by reznik911
#39 by DrShad
издеваешься? не таб док из консоли СКД, а результат запроса набора данных из консоли запросов
#40 by reznik911
не получалось, бесконечно грузится, поэтому и с СКД скинул
#41 by DrShad
поставь выбрать первые 100
#42 by reznik911
#43 by DrShad
вот бы еще чтобы там было поле, которое ты хочешь выводить как таблицу
#44 by reznik911
#45 by DrShad
ок, а теперь структуру настроек вывода
#46 by reznik911
#47 by DrShad
так а в расчетах ресурса конечно же что типа Сумма(количество)?
#48 by DrShad
в расчет выражения кроме группировки по номенклатуре добавить саму накладную
#49 by reznik911
естественно З.Ы. только ссылку на документ(поле Ссылка)я делал  на закладке "Выражение представления" - НакладнаяНомер. Юзер хотел видеть в таком виде расшифровку поля
#50 by DrShad
и количество выводится нормально? не двоит, не троит?
#51 by reznik911
ВычислитьВыражениеСГруппировкойТаблицаЗначений("НомерСНН","НакладнаяНомер,Ссылка")?
#52 by reznik911
не двоит. яже говорю проблем не было вовсе, пока не придумали ахинею с тем что стали по вагонам на одну накладную выписывать по несколько СНН, вот тогда двоит (может быть будет и троить если 3 СНН будет)
#53 by reznik911
никаких изменений не дало
#54 by DrShad
ну как знаешь
#55 by reznik911
ну  а как решить то? добавление в выражение по накладной тоже ниче не дало(
#56 by DrShad
совсем ничего? у тебя скайп есть?
#57 by reznik911
ну как ничего, он тупо выводит новое поле "Новый" с НомерСНН ко всем строчкам
#58 by reznik911
когда то был. Я с работы выхожу уже. А база серверная на работе, всмысле с собой взять не смогу)))
#59 by DrShad
не обязательно базу брать, я тебе и так объясню прикол
#60 by reznik911
ок. Объясняйте)
#61 by DrShad
ща, кофе выпью и начнем
#62 by reznik911
ждемс
#63 by DrShad
значит так, сейчас примерно такая ситуация с набором данных?
#64 by DrShad
пихаем этот набор в СКД и получаем по твоим настройкам следующее
#65 by DrShad
делаем несколько вычисляемых полей с разными группировками для расчета выражения и пару настроек вывода и получаем
#66 by DrShad
выбирай что из этого тебе подходит, только внимательно
#67 by reznik911
если что можете по скайпу объяснить)
#68 by DrShad
конечно
#69 by reznik911
на вашем примере там количество 36. у меня именно так и получается, допустим по реализации 12 общая, а в отчете изза дублирования 36 получается, а надо общая 12 и по 4 по каждому
#70 by DrShad
начинает что-то доходить
#71 by DrShad
я еще вчера об этом спрашивал, но тогда ты сказал что все хорошо )))
#72 by DrShad
теперь если поймешь почему, то должно стать понятным как получить то что хочешь
#73 by reznik911
почему что? в моей ситуации он дублирует потому что на одну накладную 2 Номера СНН. В вашем примере 3 сф на одну реализацию
#74 by DrShad
не по этому
#75 by reznik911
ну он пытается сгруппировать, но всё идентично кроме 2 ячеек. И сумма числовые данные у меня для накаладной в общем)По каждой СНН ке рассматривает
#76 by DrShad
тебе нужно построить выборку набора данных таким образом, чтобы не было дублей для детальных записей
#77 by DrShad
+ пост
#78 by DrShad
вот результат, если добавить еще одну детальную запись, но с уже другим документом реализации
#79 by reznik911
по этому сообщению напрашивается менять запрос для набора по этому сообщению нужно добавить еще одну группировку по реализации(накладной)
#80 by DrShad
давай с запроса начнем
#81 by reznik911
а что там менять? брать цифры не регистра и не накладной, а СНН?
#82 by DrShad
попробуй исключить из основного набора то что приводит к задваиванию, например СНН
#83 by reznik911
ВТ.НомерСНН не выбирать?
#84 by DrShad
в основном наборе не выбирать, у тебя же именно из-за этого соединения дублируются записи?
#85 by reznik911
именно. ну чтобы исключить его из набора , нужно с запроса удалить
#86 by DrShad
значит удалить
#87 by reznik911
?
#88 by reznik911
удалил. конечно же дублирование исчезло
#89 by DrShad
но ведь их вывести нужно? попробуй создать еще один набор данных чисто под СНН и в связях свяжи его с основным
#90 by reznik911
а условие связи будет какое?
#91 by DrShad
а зачем там условие?
#92 by reznik911
связал. Вернулись к первоначальному варианту с дублированием строки
#93 by DrShad
может не до конца связал? в любом случае проще сделать через вычисляемое поле с обращением к функции общего модуля
#94 by reznik911
#95 by DrShad
ну тогда вычисляй номера СНН в функции общего модуля
#96 by reznik911
не хочется трогать конфигурацию, может стоит по другому? А для чего вообще СНН вывели отдельно в наборы не понял
#97 by DrShad
*рукалицо*
#98 by DrShad
ты же этим соединением дублируешь записи
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С