Имя: Пароль:
1C
1С v8
Не загружать из ТЗ строки с пустой колонкой
0 листопад
 
09.12.11
11:05
Написала обработку, на форме которой разместила Табличное поле, имеющее тип "ТаблицаЗначений". Т.е. данные из Эксель сначала загружаю в эту ТаблицуЗначений, назвала ее ТаблицаДокумента. Заполняю эту Таблицу на форме обработки: http://s017.radikal.ru/i436/1112/8e/5dca89bfb2ed.jpg
Далее начинаю считывать и заполнять табличную часть документа. В результате создаются лишние строки с пустым количеством (т.е. где ПриходЛ не заполнено, то загружаться не должно). Вот код:


Процедура ЗагрузитьПриходНажатие(Элемент)
   
   ДокПриход = Документы.ПоступлениеТоваровУслуг.СоздатьДокумент();
   Для Каждого Строка из ТаблицаДокумента Цикл
       
       Если Строка.ПриходЛ <> "0" Тогда     // ВОТ ЗДЕСЬ НЕ СРАБАТЫВАЕТ!!!
           СтрокаТовары = ДокПриход.Товары.Добавить();
           СтрокаТовары.Номенклатура = Справочники.Номенклатура.НайтиПоКоду(Строка.Код).Ссылка;
           Если СтрокаТовары.Номенклатура.Пустая() Тогда
               Сообщить (Строка.Наименование +  " - не загружена!!! Не найден код: " + Строка.Код);
           КонецЕсли;
           СтрокаТовары.Количество = Строка.ПриходЛ;
       КонецЕсли;
       
   КонецЦикла;
   
   ДокПриход.Записать();  
КонецПроцедуры
1 Amra
 
09.12.11
11:07
Может тип значения в колонке не строка, а число?
2 Darky
 
09.12.11
11:07
мда...разницу между 0 и "0" улавливаешь?
3 Amra
 
09.12.11
11:08
Точно число, судя по СтрокаТовары.Количество = Строка.ПриходЛ А сравниваешь со стройкой
4 Maxus43
 
09.12.11
11:08
Чтоб не ошибаться тогда лучше писать
не
Если Строка.ПриходЛ <> "0" Тогда    
, а
Если ЗначениеЗаполнено(Строка.ПриходЛ) Тогда
5 Eugene_life
 
09.12.11
11:10
(0) или хотя бы так: Если Строка(Строка.ПриходЛ) <> "0" Тогда
6 листопад
 
09.12.11
11:13
Спасибо всем!

(4) Все получилось!!!
7 petrowsky
 
09.12.11
11:14
судя по рисунку там строка (выравнивает по левому краю)
лучше всего на ЗначениеЗаполнено() проверять
8 Amra
 
09.12.11
11:35
(7) ТОгда СтрокаТовары.Количество = Строка.ПриходЛ; некорректно
Выдавать глобальные идеи — это удовольствие; искать сволочные маленькие ошибки — вот настоящая работа. Фредерик Брукс-младший