![]() |
![]() |
![]() |
|
v7: Разная цена одинаковой номенклатуры в документе | ☑ | ||
---|---|---|---|---|
0
Масянька
23.05.16
✎
11:12
|
День добрый!
Такая фигня: табличная часть документа - есть одинаковая номенклатура. Нужно найти (если есть) одинаковую номенклатуру с разной ценой. Сразу поясню (для тех, кто в шлемофоне): 1. товар1 = 15 2. товар2 = 25 3. товар1 = 15 4. товар1 = 20 Нужно найти и вывести в сообщалке, что в 4 строке другая цена. Выгрузить таб. часть и свернуть - номера строк? Выгрузить таб. часть, обходить ее и в цикле обходить таб. часть - как-то не айс. Есть еще варианты? PS По поводу зачем и почему - так надо. Заранее спасибо. |
|||
1
PuhUfa
23.05.16
✎
11:14
|
Выбрать Различные ?
|
|||
2
aleks_default
23.05.16
✎
11:16
|
(0) не заполнять в таб. часть одинаковую номенклатуру с разной цену.
Лечить не последствие а причину |
|||
3
Масянька
23.05.16
✎
11:23
|
(1) А в семерке есть?
(2) Повторяю - причины нет. |
|||
4
Звездец
23.05.16
✎
11:41
|
Функция ПроверкаДублейСтрок(Конт) Экспорт
// Эта процедура проверяет спецификацию документа на дубли товара СписокТоваров=СоздатьОбъект("СписокЗначений"); Конт.ВыбратьСтроки(); Пока Конт.ПолучитьСтроку() = 1 Цикл Твр=Конт.Товар; Если Твр.Выбран()=0 Тогда Продолжить; КонецЕсли; // Проверка товара на совпадение в строках документа Если СписокТоваров.НайтиЗначение(Твр)<>0 Тогда // Значит такой товар уже в накладной есть Сообщить("Повторение товара:"+СокрП(Твр.Наименование)); Возврат 1; КонецЕсли; СписокТоваров.ДобавитьЗначение(Твр,""); КонецЦикла; Возврат 0; КонецФункции |
|||
5
Звездец
23.05.16
✎
11:44
|
для цены добавь проверку дополнительно после нахождения дубля
|
|||
6
Масянька
23.05.16
✎
11:45
|
(4) Да, блин, вас пока дождешься... :)
То есть - цикл в цикле и больше никак? |
|||
7
Звездец
23.05.16
✎
11:47
|
(6) где ты увидела цикл в цикле?
|
|||
8
lubitelxml
23.05.16
✎
11:48
|
(6) не цикл в цикле а поиск по тч в цикле по строкам тч
|
|||
9
Остап Сулейманович
23.05.16
✎
11:50
|
(7) Собсссно "СписокТоваров.НайтиЗначение(Твр)" и есть вложенный цикл. Просто записан не с помощью Для поз = Список.РазмерСписка() ...
|
|||
10
Звездец
23.05.16
✎
11:51
|
(9) ну если так буквально. Но это клюшки, кто-то знает другие варианты?
|
|||
11
Масянька
23.05.16
✎
11:52
|
(7) А, вот уже ответили (9)
|
|||
12
Масянька
23.05.16
✎
11:52
|
(10) Вот я и спрашиваю. Может есть - красивше...
|
|||
13
пипец
23.05.16
✎
11:53
|
добавить колонку в ТЗ с количеством 1 и свернуть
|
|||
14
Звездец
23.05.16
✎
11:54
|
тебе нужно вывети список номенклатуры или просто достаточно сообщения что строки есть?
|
|||
15
Mikeware
23.05.16
✎
11:54
|
Выгрузить в ИТЗ, добавить колонку с количеством, заполнить колонку единичкой, сгруппировать по товару и цене, добавить индекс по количесттву и получить все неравные 1, (а в тзПотомки - вплоть до номера стороки)
|
|||
16
Остап Сулейманович
23.05.16
✎
11:54
|
(12) Вполне рабочий вариант. ДляНаЗачем красивше?
"Все так делают" (ЦЫ). И никто до сих пор не скис. |
|||
17
Mikeware
23.05.16
✎
11:57
|
(16) красота спасет мир!©
зы. а покуизм - нервы!!© |
|||
18
Масянька
23.05.16
✎
12:03
|
(16) Периодически себя спрашиваю... Ответа пока нет :)
(17) Вариант :) Всем - спасибо! |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |