|
Проблема с получением номера расхода из возврата | ☑ | ||
---|---|---|---|---|
0
bondarenko-2008
05.04.13
✎
12:36
|
Формирую список возвратных накладных за 1 день. Необходимо по мимо других данных, получить на номер расходной накладной, на основании которой был сделан возврат. Все выводит, кроме этого номера. Что я неправильно связал? Привожу код:
Запрос1 = Новый Запрос; Запрос1.Текст = "ВЫБРАТЬ |Контрагенты.ИНН КАК ИНН, |Контрагенты.Наименование КАК Контрагент, |ВозвратТоваровОтПокупателя.Номер КАК НомерНакладной, |ВозвратТоваровОтПокупателя.Дата КАК ДатаНакладной, |ВозвратТоваровОтПокупателя.СуммаДокумента КАК СуммаНакладной, |ВозвратТоваровОтПокупателя.ДоговорКонтрагента.Наименование КАК Договор, |Контрагенты.Родитель, |РеализацияТоваровУслуг.Номер КАК НомерРеализации |ИЗ |Документ.ВозвратТоваровОтПокупателя КАК ВозвратТоваровОтПокупателя |ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Контрагенты КАК Контрагенты | ПО ВозвратТоваровОтПокупателя.Контрагент = Контрагенты.Ссылка |ЛЕВОЕ СОЕДИНЕНИЕ Документ.РеализацияТоваровУслуг КАК РеализацияТоваровУслуг | ПО ВозвратТоваровОтПокупателя.Сделка = РеализацияТоваровУслуг.Ссылка |ГДЕ |ВозвратТоваровОтПокупателя.Проведен = ВозвратТоваровОтПокупателя.Проведен |И ВозвратТоваровОтПокупателя.Дата >= &Дата1 |И ВозвратТоваровОтПокупателя.Дата <= &Дата2 |И Контрагенты.Родитель = &Родитель | |УПОРЯДОЧИТЬ ПО | Контрагенты.Наименование"; Запрос1.УстановитьПараметр("Дата1", НачалоДня(ДатаВыгрузки)); //Дата Запрос1.УстановитьПараметр("Дата2", КонецДня(ДатаВыгрузки)); //Дата Запрос1.УстановитьПараметр("Родитель", Справочники.Контрагенты.НайтиПоНаименованию("Покупатели")); Результат1=Запрос1.Выполнить().Выбрать(); АктСверкиСтруктура=новый ТаблицаЗначений; АктСверкиСтруктура.Колонки.Добавить("ИНН"); АктСверкиСтруктура.Колонки.Добавить("Контрагент"); АктСверкиСтруктура.Колонки.Добавить("НомерРасхода"); АктСверкиСтруктура.Колонки.Добавить("НомерНакладной"); АктСверкиСтруктура.Колонки.Добавить("ДатаНакладной"); АктСверкиСтруктура.Колонки.Добавить("СуммаНакладной"); АктСверкиСтруктура.Колонки.Добавить("ТипНакладной"); АктСверкиСтруктура.Колонки.Добавить("Договор"); пока Результат1.Следующий() цикл Список=АктСверкиСтруктура.Добавить(); Список.ИНН=Результат1.ИНН; Список.Контрагент=Результат1.Контрагент; Список.НомерРасхода=Результат1.НомерРеализации; Список.ДатаНакладной=Результат1.ДатаНакладной; Список.НомерНакладной=Результат1.НомерНакладной; Список.СуммаНакладной=Результат1.СуммаНакладной; Список.Договор=Результат1.Договор; Список.ТипНакладной=Строка("возврат"); конеццикла; |
|||
1
Godofsin
05.04.13
✎
12:39
|
в сделке ваще то заказ указывается
|
|||
2
salvator
05.04.13
✎
12:41
|
(0) А че контрагента из Возврата не вытащил?
|
|||
3
Godofsin
05.04.13
✎
12:42
|
а не, наврал, может там быть РТиУ
|
|||
4
rbcvg
05.04.13
✎
12:43
|
Реализация хранится в табличной части Товары
ВозвратТоваровОтПокупателяТовары.ДокументПартии |
|||
5
Godofsin
05.04.13
✎
12:43
|
+(2)да и номер док-та можно из "сделка" дернуть так-то...
|
|||
6
Godofsin
05.04.13
✎
12:44
|
(4) Дааа, только вот он может быть пустым
|
|||
7
rbcvg
05.04.13
✎
12:46
|
(6) оптимисты предпочитают думать что он может быть полным
|
|||
8
bondarenko-2008
05.04.13
✎
12:47
|
Я специально создал расход и возврат одним и тем же числом, но значение не выводится.
|
|||
9
ksTheme
05.04.13
✎
12:48
|
Соединения не нужны, можно все вытащить из документа возврата, чтобы не был пустым сделай отбор на ссылку реализации
|
|||
10
ksTheme
05.04.13
✎
12:48
|
(9) то есть не отбор а условие
|
|||
11
rbcvg
05.04.13
✎
12:49
|
(8) Сделка = ЗаказПокупателя, ты соединяешь по РеализацияТоваровУслуг.Ссылка
|
|||
12
bondarenko-2008
05.04.13
✎
12:50
|
Если возврат сделан на основании расхода (то надо чтобы выводил), если же нет то пусть поле остается пустым
|
|||
13
bondarenko-2008
05.04.13
✎
12:51
|
т.е. нужно выводить оба вида
|
|||
14
ksTheme
05.04.13
✎
12:55
|
(13) Ну пусть выводится пустым, в чем проблема, номер накладной тащишь из ТЧ, если его нет он пустой. Таблицы достаточной одной ВозвратТоваров, из нее получаешь все, что нужно без подключения реализации и справочника
|
|||
15
bondarenko-2008
05.04.13
✎
13:01
|
Вот так?
ВозвратТоваровОтПокупателя.Товары.( | ДокументПартии.Номер | ) |
|||
16
bondarenko-2008
05.04.13
✎
13:04
|
Пожалуйста укажите точно эту строчку из запроса, где можно поймать номер реализации.
|
|||
17
rbcvg
05.04.13
✎
13:08
|
(16) продам консоль запросов, дорого.
ВЫБРАТЬ ВозвратТоваровОтПокупателяТовары.Ссылка, ВозвратТоваровОтПокупателяТовары.Ссылка.Сделка.Номер ИЗ Документ.ВозвратТоваровОтПокупателя.Товары КАК ВозвратТоваровОтПокупателяТовары |
|||
18
salvator
05.04.13
✎
13:10
|
"ВЫБРАТЬ
|ВозвратТоваровОтПокупателя.Номер КАК НомерНакладной, |ВозвратТоваровОтПокупателя.Дата КАК ДатаНакладной, |ВозвратТоваровОтПокупателя.СуммаДокумента КАК СуммаНакладной, |ВозвратТоваровОтПокупателя.ДоговорКонтрагента.Наименование КАК Договор, |ВозвратТоваровОтПокупателя.Контрагент.Родитель, |ВозвратТоваровОтПокупателя.Сделка.Номер КАК НомерРеализации |ИЗ |Документ.ВозвратТоваровОтПокупателя КАК ВозвратТоваровОтПокупателя |ГДЕ |ВозвратТоваровОтПокупателя.Проведен |И ВозвратТоваровОтПокупателя.Дата МЕЖДУ &Дата1 И &Дата2 |И ВозвратТоваровОтПокупателя.Контрагент.Родитель = &Родитель | |УПОРЯДОЧИТЬ ПО | Контрагенты.Наименование"; |
|||
19
bondarenko-2008
05.04.13
✎
13:16
|
спасибо, пробую
|
|||
20
bondarenko-2008
05.04.13
✎
13:23
|
нет, нету. Печаль.
|
|||
21
Godofsin
05.04.13
✎
13:24
|
(20) чего нету?
|
|||
22
bondarenko-2008
05.04.13
✎
13:28
|
номера расхода, должен 1-ин быть точно. делаю Сообщить(Реализация1.НомерРеализации); и сообщений нету.
|
|||
23
rbcvg
05.04.13
✎
13:32
|
(22) что есть Реализация1?
|
|||
24
bondarenko-2008
05.04.13
✎
13:34
|
загнался, Сообщить(Результат1.НомерРеализации);
|
|||
25
Godofsin
05.04.13
✎
13:40
|
(24) Сделка точно везде указана?
|
|||
26
bondarenko-2008
05.04.13
✎
13:43
|
запрос я просто скопировал отсюда
|
|||
27
Godofsin
05.04.13
✎
13:44
|
(26) глазами глянь у документов, указана ли там сделка
|
|||
28
bondarenko-2008
05.04.13
✎
13:45
|
понял, о чем вы
|
|||
29
bondarenko-2008
05.04.13
✎
14:05
|
Поле сделка не заполнено, потому что оно меняется на "Заказ покупателя" при заполнении поля Контрагент.
|
|||
30
bondarenko-2008
05.04.13
✎
14:10
|
поэтому и не выводит номер
|
|||
31
ksTheme
05.04.13
✎
14:37
|
(30)Для начала нужно понимать, что делает документ ВозвратТоваров. Приходует товар в "Партию Товаров из которой был продан" для этого указывается Документ партии в табличной части (в нашем случае это "реализация").
"ВЫБРАТЬ | ВозвратТоваровОтПокупателя.Ссылка, | ВозвратТоваровОтПокупателя.Организация, | ВозвратТоваровОтПокупателя.Контрагент, | ВозвратТоваровОтПокупателя.Товары.( | ДокументПартии КАК РеализацияТовароИУслуг | ) |ИЗ | Документ.ВозвратТоваровОтПокупателя КАК ВозвратТоваровОтПокупателя" Прошу заметить, что один документ может иметь несколько возвращенных товаров по разным партиям (накладным) |
|||
32
ksTheme
05.04.13
✎
14:43
|
+ (31) Документом партии помимо реализации могут быть еще 7 видов документов, если нужны именно реализации, нужно ставить отбор на тип документа
|
|||
33
bondarenko-2008
05.04.13
✎
14:51
|
спасибо
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |