|
v7: проблема с поиском в тз | ☑ | ||
---|---|---|---|---|
0
LamerSql
14.07.11
✎
10:13
|
ТаблицаНоменклатуры = СоздатьОбъект("ТаблицаЗначений");
ВыгрузитьТабличнуюЧасть(ТаблицаНоменклатуры,"Номенклатура"); //ТаблицаНоменклатуры.ВыбратьСтроку(); Запрос = СоздатьОбъект("Запрос"); ТекстЗапроса = " |Номенклатура = Документ.Реализация.Номенклатура; |Количество = Документ.Реализация.Количество; |ТекущийДокумент = Документ.Реализация.ТекущийДокумент; |Функция КоличествоСумма = Сумма(Количество); |Группировка Номенклатура без групп; |Условие(ТекущийДокумент = ДокОснование); |"; // Если ошибка в запросе, то выход из процедуры тзОстатки = СоздатьОбъект("ТаблицаЗначений"); Запрос.Выполнить(ТекстЗапроса); Запрос.Выгрузить(тзОстатки); тзОстатки.ВыбратьСтроку(); ТекстЗапроса = " |ОбрабатыватьДокументы все; |Номенклатура = Документ.ВозвратОтПокупателя.Номенклатура; |Количество = Документ.ВозвратОтПокупателя.Количество; |ДокРеализации = Документ.ВозвратОтПокупателя.ТекущийДокумент.ДокОснование; |Функция КоличествоСумма = Сумма(Количество); |Группировка Номенклатура без групп; |Условие(ДокРеализации = ДокОснование); |"; тзВозврат = СоздатьОбъект("ТаблицаЗначений"); Запрос.Выполнить(ТекстЗапроса); Запрос.Выгрузить(тзВозврат); тзВозврат.ВыбратьСтроку(); тзВозврат.ВыбратьСтроки(); Пока тзВозврат.ПолучитьСтроку() = 1 Цикл Если тзОстатки.НайтиЗначение(тзВозврат.Номенклатура,НомерСтрокиТз,"Номенклатура") = 0 Тогда // значение не найдено Сообщить("Внимание товара: "+тзВозврат.Номенклатура+" нет в реализации: "+ ДокОснование); КонецЕсли; КонецЦикла; Вот это всегда возврашает 0, хотя товар должен находиться, сильно не пинать с 7-кой незнаком почти. Пока тзВозврат.ПолучитьСтроку() = 1 Цикл Если тзОстатки.НайтиЗначение(тзВозврат.Номенклатура,НомерСтрокиТз,"Номенклатура") = 0 Тогда // значение не найдено Сообщить("Внимание товара: "+тзВозврат.Номенклатура+" нет в реализации: "+ ДокОснование); КонецЕсли; КонецЦикла; |
|||
1
andrewks
14.07.11
✎
10:15
|
ока тзВозврат.ПолучитьСтроку() = 1 Цикл
НомерСтрокиТз=0; Если тзОстатки.НайтиЗначение(тзВозврат.Номенклатура,НомерСтрокиТз,"Номенклатура") = 0 Тогда // значение не найдено Сообщить("Внимание товара: "+тзВозврат.Номенклатура+" нет в реализации: "+ ДокОснование); КонецЕсли; КонецЦикла; |
|||
2
Vitello
14.07.11
✎
10:15
|
НомерСтрокиТз - обнуляешь?
|
|||
3
1Сергей
14.07.11
✎
10:16
|
(2)+ перед каждым поиском
|
|||
4
vde69
14.07.11
✎
10:16
|
вот это не нужно совсем
тзВозврат.ВыбратьСтроку(); тзВозврат.ВыбратьСтроки(); Пока тзВозврат.ПолучитьСтроку() = 1 Цикл |
|||
5
LamerSql
14.07.11
✎
10:16
|
(2) блин по-моему понял где лошанулся.
|
|||
6
Ёпрст
14.07.11
✎
10:17
|
(0)
Пока тзВозврат.ПолучитьСтроку() = 1 Цикл НомерСтрокиТз=""; |
|||
7
LamerSql
14.07.11
✎
10:19
|
помнит народ семерку..... молодцы. 2 года не сталкивался, а тогда всего месяц учил. всем спасибо
|
|||
8
Ёпрст
14.07.11
✎
10:19
|
1 запрос не нужен, достаточно
ДокОснование.ВыгрузитьТабличнуюЧасть + без указания периода, он будет искать в дате = ДатеТА.. т.е может вообще ничего не найти, во втором запросе - аналогично, без указания периода этот запрос коту под хвост. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |