|
как пропустить строчку в табличной части, в плане обмена | ☑ | ||
---|---|---|---|---|
0
Vvvvv
06.05.14
✎
10:25
|
1С: Конвертация данных, в плане обмена
Можно ли как то, в плане обмена, у документа в табличной части, пропустить строку или несколько строк табличной части. Объясню на примере: в 1с 7.7, есть документ "Поступление товаров", в нем номенклатура может быть только с типом "товар", с типом "услуга" нельзя. |
|||
1
Wobland
06.05.14
✎
10:26
|
можно
|
|||
2
Vvvvv
06.05.14
✎
10:28
|
а как? есть какая нибудь статья или пример
|
|||
3
Starhan
06.05.14
✎
10:30
|
Обработчики "Правила конвертации группы свойств"
Перед выгрузкой Условия возникновения события Событие выполняется перед выгрузкой очередного объекта коллекции, например, строки табличной части. Возможен Отказ от выгрузки объекта коллекции (строки табличной части или движения регистра). УзелОбъектаКоллекции еще не создан. Допустимо добавление произвольных записей в УзелКоллекцииОбъектов, например, когда необходимо конвертировать одну строку табличной части в несколько. |
|||
4
Vvvvv
06.05.14
✎
10:38
|
(3) а ты не подскажешь, есть где статья на этот пример, а то немного туманно
|
|||
5
Wobland
06.05.14
✎
10:40
|
(4) какая-то из этих кнопок
http://i.imgur.com/THZok2H.png |
|||
6
Starhan
06.05.14
✎
10:41
|
Пример
http://prntscr.com/3gntqd |
|||
7
Vvvvv
06.05.14
✎
14:47
|
написал текст, что бы переносилась та номенклатура, который имеет тип "товар". В правилах конвертации группы свойств, в событии "перед выгрузкой"
Номенклатура = ОбъектКоллекции.Номенклатура; Запр = новый Запрос; Запр.Текст = "ВЫБРАТЬ | Номенклатура.Код, | Номенклатура.ВидНоменклатуры, | Номенклатура.НаименованиеПолное, | Номенклатура.ТипНоменклатуры |ИЗ | Справочник.Номенклатура КАК Номенклатура |ГДЕ | Номенклатура.ТипНоменклатуры = &ТипНоменклатуры"; Запр.УстановитьПараметр("ТипНоменклатуры", Перечисления.ТипыНоменклатуры.Товар); Выборка = Запр.Выполнить().Выбрать(); Пока Выборка.Следующий() Цикл Если Выборка.НаименованиеПолное = Строка(Номенклатура) тогда Отказ = Ложь; Иначе Отказ = Истина; КонецЕсли; КонецЦикла; http://www.image123.net/68glznqrfvunpic.html |
|||
8
Vvvvv
06.05.14
✎
14:48
|
(7) + в итоге, в тех документах, в которых был товар с типом "услуга", в них табличная часть пустая
|
|||
9
Wobland
06.05.14
✎
14:49
|
молодец. теперь распечатай это, сожги и никогда так не делай
|
|||
10
Wobland
06.05.14
✎
14:52
|
Отказ=Номенклатура.Тип=Услуга
|
|||
11
Vvvvv
06.05.14
✎
15:02
|
(10) прости, не понял эту строчку? Отказ - это же тип булево
|
|||
12
Wobland
06.05.14
✎
15:03
|
(11) ага
|
|||
13
Vvvvv
06.05.14
✎
15:05
|
(12)
Отказ=Номенклатура.Тип=Услуга это прямо так и писать в коде, или что ты имеешь ввиду? |
|||
14
Wobland
06.05.14
✎
15:07
|
(13) страшно?
Отказ=?(Отказ, Отказ, Номенклатура.Тип=Услуга) так оно вроде верней будет |
|||
15
Fedor-1971
06.05.14
✎
15:10
|
(13) отказ=?(Номенклатура.Тип=Услуга,Истина,Ложь)
Номенклатура.Тип=Услуга - это не каскадное присваивание как в С, а операция сравнения с булевым результатом Так понятнее? |
|||
16
НЕА123
06.05.14
✎
15:11
|
(14)+
не пятница, но все же Отказ=Отказ+(Номенклатура.Тип=Услуга) |
|||
17
Starhan
06.05.14
✎
15:12
|
(7) :) Я же тебе стрелкой на отказ показал, Это не значит что в условии обязательно должен быть запрос
Если ОбъектКоллекции.Номенклатура.ТипНоменклатуры = Перечисления.ТипыНоменклатуры.Услуга Тогда Отказ = Истина; КонецЕсли; |
|||
18
Wobland
06.05.14
✎
15:13
|
(16) а оно его будет в булево преобразовывать после сложения?
|
|||
19
НЕА123
06.05.14
✎
15:14
|
(16)
эээ правильнее Отказ=0+Отказ+(Номенклатура.Тип=Услуга) |
|||
20
Starhan
06.05.14
✎
15:14
|
(18) само когда проверять отказ будет.
|
|||
21
НЕА123
06.05.14
✎
15:16
|
(18)
должно, вроде. ЗЫ проверю. |
|||
22
Starhan
06.05.14
✎
15:17
|
||||
23
Fedor-1971
06.05.14
✎
15:18
|
(16) (20) даже интересно стало, каким будет результат Ложь+Истина=?
|
|||
24
Starhan
06.05.14
✎
15:18
|
(21) да там и не надо. Везде пишешь отказ =1 и работает.
|
|||
25
Starhan
06.05.14
✎
15:18
|
(23) какой то ты ен тру 1сник см (22)
|
|||
26
НЕА123
06.05.14
✎
15:20
|
(8)
да. ноль ложь иначе истина. |
|||
27
Fedor-1971
06.05.14
✎
15:23
|
(25) видел, но там в результате значение не булево, а число.
|
|||
28
Starhan
06.05.14
✎
15:28
|
емае только щас вчитался в (7).
Те рано КД заниматься :) |
|||
29
Starhan
06.05.14
✎
15:31
|
(27) а так? :) http://prntscr.com/3gp4y8
|
|||
30
Vvvvv
06.05.14
✎
15:36
|
Спасибо вам всем за помощь
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |