Прошу помочь с запросом
Показывать по
10
20
40
сообщений
- 1
- 2
07.04.2017
08:49
#1
Добрый день.
Бухгалтерия КОРП 3.0. платформа 8.3.8.1861.
Есть документ "Реализация отгруженной продукции". В типовом варианте у него есть реквизит "Документ отгрузки", в котором ссылка на "Реализацию товаров и услуг". И есть запрос, который из документа "Реализация отгруженной продукции" берет данные для уведомления о контролируемых сделках.
У нас же есть еще и табличная часть РТУ, в которой могут храниться несколько ссылок на документы "Реализация товаров и услуг".
Задача вроде бы простая: сделать так, чтобы запрос брал данные документов "Реализация товаров и услуг" из табличной части РТУ (если в ней есть строки). Но блин, что-то ну совсем не получается у меня. Хожу где-то рядом, и всё никак. Кто может помочь?
Во вложении скриншоты с примерами и запрос
Бухгалтерия КОРП 3.0. платформа 8.3.8.1861.
Есть документ "Реализация отгруженной продукции". В типовом варианте у него есть реквизит "Документ отгрузки", в котором ссылка на "Реализацию товаров и услуг". И есть запрос, который из документа "Реализация отгруженной продукции" берет данные для уведомления о контролируемых сделках.
У нас же есть еще и табличная часть РТУ, в которой могут храниться несколько ссылок на документы "Реализация товаров и услуг".
Задача вроде бы простая: сделать так, чтобы запрос брал данные документов "Реализация товаров и услуг" из табличной части РТУ (если в ней есть строки). Но блин, что-то ну совсем не получается у меня. Хожу где-то рядом, и всё никак. Кто может помочь?
Во вложении скриншоты с примерами и запрос
07.04.2017
13:49
#2
Хотя бы мысль... Как лучше сделать.... Запрос к реквизиту ДокументОтгрузки и второй запрос к непустой Табличной части РТУ и потом объединить может....
Ответили:
пост #3
07.04.2017
15:20
#4
Добрый день! Попробуйте обратиться к . Раньше очень часто сталкивалась с проблемами, касательно 1С. С тех пор, как нашла этот сайт, не знаю проблем. Помогает Александр. Настоящий специалист в своем деле!
11.04.2017
07:46
#6
Еще актуально? А то не хочу зазря делать)
Вообще, данных мало, надо базу смотреть.
Если в рамках текущих условий и чтобы этот запрос работал для списка, то просто добавить еще один запрос и подкорректируем этот и всё будет работать. А именно: получим список документов из табличной части поступления
Вообще, данных мало, надо базу смотреть.
Если в рамках текущих условий и чтобы этот запрос работал для списка, то просто добавить еще один запрос и подкорректируем этот и всё будет работать. А именно: получим список документов из табличной части поступления
11.04.2017
08:51
#7
Я примерно накидал следующее. Сразу говорю, запрос у вас не заработает, так как не хватает названия табличной части в документе отгруженных товаров. Да и я отладкой не занимался, просто в блокноте правил. Но могу гарантировать, что при минимальном вмешательстве запрос заработает.
Что я исправил: добавил впереди два запроса и прокомментировал для чего они используются. И ниже исправил еще условия
Что я исправил: добавил впереди два запроса и прокомментировал для чего они используются. И ниже исправил еще условия
12.04.2017
08:40
#8
Алексей пишет:
Спасибо.
Я вопрос решил сам. Сделал аналогичный запрос к табличной части, тем самым выхватил документы реализации товаров из неё. Раз этот запрос по структуре одинаков с запросом к реквизиту ДокументОтгрузки, то и объединить их проблемы не составит. При обычном объединении дубли из табличной части и реквизита убираются. На выходе получаем вполне жизнеспособный вариант. Потом правда всплыли другие ошибки, но это уже другая история.
Свой вариант отдал не тестирование, если что не так - буду пробовать Ваш использовать. Так что Вы работу проделали не зря.
| Цитата |
|---|
Я примерно накидал следующее. Сразу говорю, запрос у вас не заработает, так как не хватает названия табличной части в документе отгруженных товаров. Да и я отладкой не занимался, просто в блокноте правил. Но могу гарантировать, что при минимальном вмешательстве запрос заработает. Что я исправил: добавил впереди два запроса и прокомментировал для чего они используются. И ниже исправил еще условия |
Я вопрос решил сам. Сделал аналогичный запрос к табличной части, тем самым выхватил документы реализации товаров из неё. Раз этот запрос по структуре одинаков с запросом к реквизиту ДокументОтгрузки, то и объединить их проблемы не составит. При обычном объединении дубли из табличной части и реквизита убираются. На выходе получаем вполне жизнеспособный вариант. Потом правда всплыли другие ошибки, но это уже другая история.
Свой вариант отдал не тестирование, если что не так - буду пробовать Ваш использовать. Так что Вы работу проделали не зря.
12.04.2017
08:54
#9
Если будет время, отправьте примерно вашу версию в коде. А то, к сожалению, не совсем понял и интересно очень
То есть, во внутреннем соединении вы использовали связь не с документами реализации, а с табличной частью документов отгрузки? Просто я ночью подумал и еще способ гораздо проще придумал (это вместо внутреннего соединения подставить):
ПРАВОЕ СОЕДИНЕНИЕ Документ.РеализацияОтгруженныхТоваров.[НаименованиеТаблицы] КАК СписокРеализаций
ПО РеализацияОтгруженныхТоваров.Ссылка = СписокРеализаций.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
ПО СписокРеализаций.Ссылка = РеализацияТоваровУслуг.Ссылка
То есть, по факту, в табличной части документа реализации отгруженных товаров содержится только ссылка на сам документ на каждый "реализация товаров и услуг". То есть, в ней нет информации о самом документе РеализацияТоваровУслуг. Поэтому мы также должны присоединить сам Документ (левое соединение в коде).
А правым соединением мы учитываем условие, что реализация отгруженных товаров может быть одна, а реализаций товаров и услуг несколько.
То есть, во внутреннем соединении вы использовали связь не с документами реализации, а с табличной частью документов отгрузки? Просто я ночью подумал и еще способ гораздо проще придумал (это вместо внутреннего соединения подставить):
ПРАВОЕ СОЕДИНЕНИЕ Документ.РеализацияОтгруженныхТоваров.[НаименованиеТаблицы] КАК СписокРеализаций
ПО РеализацияОтгруженныхТоваров.Ссылка = СписокРеализаций.Ссылка
ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг
ПО СписокРеализаций.Ссылка = РеализацияТоваровУслуг.Ссылка
То есть, по факту, в табличной части документа реализации отгруженных товаров содержится только ссылка на сам документ на каждый "реализация товаров и услуг". То есть, в ней нет информации о самом документе РеализацияТоваровУслуг. Поэтому мы также должны присоединить сам Документ (левое соединение в коде).
А правым соединением мы учитываем условие, что реализация отгруженных товаров может быть одна, а реализаций товаров и услуг несколько.
12.04.2017
12:58
#10
Алексей пишет:
Если я не ошибаюсь, то на вариант соединения с табличной частью 1С-ка будет ругаться.
Во вложении мой запрос...
| Цитата |
|---|
ПРАВОЕ СОЕДИНЕНИЕ Документ.РеализацияОтгруженныхТоваров.[НаименованиеТаблицы] КАК СписокРеализаций ПО РеализацияОтгруженныхТоваров.Ссылка = СписокРеализаций.Ссылка |
Во вложении мой запрос...
Ответили:
пост #11
- 1
- 2
Читают тему
(гостей: 1)