![]() |
|
v7: Загрузка из файла | ☑ | ||
---|---|---|---|---|
0
Gera1t
20.01.14
✎
22:32
|
загружаю текст из файла в таблицу документа.
Загружается только 32 строки. Вот такой код: Процедура Загрузить() УдалитьСтроки(); Ш1 = ""; Ш2 = ""; Ш = ""; Данные = СоздатьОбъект("Текст"); Данные.КодоваяСтраница(0); Данные.Открыть(ФормИмяФайла); КолСтр = Данные.КоличествоСтрок(); Для к=2 По Данные.КоличествоСтрок() Цикл Если к < Данные.КоличествоСтрок() Тогда НоваяСтрока(); КонецЕсли; Стр = ""; Стр=Данные.ПолучитьСтроку(к); Стр=СтрЗаменить(Стр,Симв(9),РазделительСтрок); Для кк=1 По СтрКоличествоСтрок(Стр) Цикл Если к < СтрКоличествоСтрок(Стр) Тогда Если КК = 1 Тогда НЗаказа = СтрПолучитьСтроку(Стр,кк); Форма.НЗ.Заголовок(СтрПолучитьСтроку(Стр,кк)); КонецЕсли; Если КК = 2 Тогда Наименование = СтрПолучитьСтроку(Стр,кк); ИначеЕсли КК = 4 Тогда НомерПозиции = СтрПолучитьСтроку(Стр,кк); ИначеЕсли КК = 6 Тогда Материал = СтрПолучитьСтроку(Стр,кк); ИначеЕсли КК = 7 Тогда Длина = СтрПолучитьСтроку(Стр,кк); ИначеЕсли КК = 8 Тогда Ширина = СтрПолучитьСтроку(Стр,кк); ИначеЕсли КК = 11 Тогда КолВо = СтрПолучитьСтроку(Стр,кк); КонецЕсли; Ш1 = Строка(НЗаказа); Пока СтрДлина(Ш1) <> 5 Цикл Ш1 = "0" + Ш1; КонецЦикла; Ш2 = Строка(НомерПозиции); Пока СтрДлина(Ш2) <> 6 Цикл Ш2 = "0" + Ш2; КонецЦикла; Ш = Ш1 + Ш2; КонтрСимвол = КонтрольныйСимвол(Ш); Штрихкод = Ш + КонтрСимвол; КонецЕсли; КонецЦикла; КонецЦикла; КонецПроцедуры |
|||
1
Gera1t
20.01.14
✎
22:32
|
в чем проблема? Почему только 32 строки загружается?
|
|||
2
welwel
20.01.14
✎
22:35
|
а что отладчик говорит?
|
|||
3
Gera1t
20.01.14
✎
22:38
|
Наименование = " "
|
|||
4
Gera1t
20.01.14
✎
22:38
|
вот что
|
|||
5
Gera1t
20.01.14
✎
22:38
|
вот так даже
Стр = "426Дно ящика4262121ДВП61944662344820Кромка ПВХ бук 2/19Бук2/192Кромка ПВХ бук 2/19Бук2/192Кромка ПВХ бук 2/19Бук2/192 4454921" Наименование = " " |
|||
6
Gera1t
20.01.14
✎
22:39
|
т.е. как бы он должен Дно ящика подставлять
|
|||
7
Gera1t
20.01.14
✎
22:53
|
Все разобрался
|
|||
8
КонецЦикла
20.01.14
✎
22:56
|
Зачем еще строки перебирать?
Вот так вроде проще Стр = Текст.ПолучитьСтроку(Сч); Если ПустаяСтрока(Стр) = 1 Тогда Продолжить; КонецЕсли; ИДДокумента = Число(Лев(Стр, Найти(Стр, Разделитель) - 1)); Стр = Прав(Стр, СтрДлина(Стр) - Найти(Стр, Разделитель)); ИдТовара = Число(Лев(Стр, Найти(Стр, Разделитель) - 1)); Стр = Прав(Стр, СтрДлина(Стр) - Найти(Стр, Разделитель)); КодТовара = Лев(Стр, Найти(Стр, Разделитель) - 1); |
|||
9
Gera1t
20.01.14
✎
23:04
|
(8) Мб проще и правильней, но уже написал так, второй цикл комп не сильно загружает, переделывать не буду уже
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |