|
как выгрузить из .txt файла в 1с 🠗 (Волшебник 27.09.2017 13:44) | ☑ | ||
---|---|---|---|---|
0
savage_pro
27.09.17
✎
13:43
|
коллеги, подскажите:
добавить надо в документе.продаж номенклатура цена лук 120 помидор 250 картофель 140 Для Счетчик = 1 по КоличествоСтрок Цикл ТекСтрока = Текст.ПолучитьСтроку(Счетчик); СтрокаРазделить = СтрЗаменить(ТекСтрока,";", Символы.ПС); ИмяНоменклатуры = СтрПолучитьСтроку(СтрокаРазделить,1); ЦенаНоменклатуры = СтрПолучитьСтроку(СтрокаРазделить,2); //Для каждого Строка Из Объект.ПереченыНоменклатуры Цикл Номен = Документы.Продажа; Если Номен.Пустая() Тогда НоваяНоменклатура = Объект.ПереченыНоменклатуры.Добавить(); НоваяНоменклатура.Номенклатура = ИмяНоменклатуры; НоваяНоменклатура.Цена = ЦенаНоменклатуры; КонецЕсли; //КонецЦикла; КонецЦикла; |
|||
1
savage_pro
27.09.17
✎
13:44
|
у меня условия не то работает как можно исправит?
|
|||
2
Волшебник
модератор
27.09.17
✎
13:45
|
(1) Сделайте правильное условие
|
|||
3
Fish
27.09.17
✎
13:47
|
Какая-то непонятная жуть. Исправить можно, предварительно подучив 1С.
|
|||
4
Злопчинский
27.09.17
✎
13:47
|
новую строку в документ - свосем добавлять не надо?
|
|||
5
savage_pro
27.09.17
✎
13:52
|
из файла надо добавлять
|
|||
6
Fedor-1971
27.09.17
✎
13:52
|
(0) по уму так
1. Чтение текста как описано в СП Текст = Новый ЧтениеТекста("d:\win.txt", КодировкаТекста.ANSI); Стр = Текст.ПрочитатьСтроку(); Пока Стр <> Неопределено Цикл // строки читаются до символа перевода строки Сообщить(Стр); Стр = Текст.ПрочитатьСтроку(); КонецЦикла; 2. Пойми что написал здесь: Номен = Документы.Продажа; Если Номен.Пустая() Тогда - что пустая()? Номен.Ссылка.Пустая()? так она всегда пустая, т.к. ты не получил документ и даже не ссылку на оный, а просто определил переменную типа "Документы.Продажа" НоваяНоменклатура = Объект.ПереченыНоменклатуры.Добавить(); - откуда взялся Объект? |
|||
7
savage_pro
27.09.17
✎
13:54
|
у меня есть документ.продажа(у него табличный часть есть(Номенклатура, Цена)) вот я хочу туда добавлять из .тхт
|
|||
8
Волшебник
модератор
27.09.17
✎
13:55
|
"Перечены" нужно заменить на "Перечень"
"ы" и "ь" разные буквы русского алфавита |
|||
9
Fish
27.09.17
✎
13:55
|
(7) А количество у тебя где?
|
|||
10
savage_pro
27.09.17
✎
13:55
|
я новичков недавно начал изучать
|
|||
11
savage_pro
27.09.17
✎
14:00
|
НоваяНоменклатура = Объект.ПереченыНоменклатуры.Добавить(); - откуда взялся Объект?
из документа в табличные часть |
|||
12
savage_pro
27.09.17
✎
14:01
|
Текст = Новый ТекстовыйДокумент;
ПолноеИмяФайла = "C:\Users\Mirzo\Desktop\Продаж.txt"; Текст.Прочитать(ПолноеИмяФайла); |
|||
13
savage_pro
27.09.17
✎
14:03
|
вот так чтения файла описано
|
|||
15
Fedor-1971
27.09.17
✎
14:10
|
(12) смотри как читать текст в (6) и тебе проще и на болшом файле не подвиснешь.
и так, попробуем начать заново. Формы УФ/ОФ? В каком контексте выполняется данный код (форма, модуль объекта, модуль менеджера)? Код точно вытащил для 8 (или таки переписываешь с 7.7, очень уж похоже)? |
|||
16
savage_pro
27.09.17
✎
14:17
|
1с 8.3
|
|||
17
savage_pro
27.09.17
✎
14:18
|
В каком контексте выполняется данный код (форма, модуль объекта, модуль менеджера)
форма |
|||
18
Fedor-1971
27.09.17
✎
14:19
|
(16) И? ответь на остальные вопросы
|
|||
19
savage_pro
27.09.17
✎
14:19
|
этот код в форме выполняется
|
|||
20
savage_pro
27.09.17
✎
14:20
|
Формы УФ/ОФ? это что такое? я неянаю
|
|||
21
savage_pro
27.09.17
✎
14:20
|
не знаю тоис
|
|||
22
Fedor-1971
27.09.17
✎
14:21
|
(20) Форма обычная или управляемая?
|
|||
23
savage_pro
27.09.17
✎
14:21
|
Формы УФ/ОФ объясни
|
|||
24
savage_pro
27.09.17
✎
14:23
|
обычная форма
|
|||
25
savage_pro
27.09.17
✎
14:24
|
(7) Текст = Новый ТекстовыйДокумент;
ПолноеИмяФайла = "C:\Users\Mirzo\Desktop\Продаж.txt"; Текст.Прочитать(ПолноеИмяФайла); КоличествоСтрок = Текст.КоличествоСтрок(); |
|||
26
Fedor-1971
27.09.17
✎
14:27
|
(23) в 22 вопрос
(24) тогда Номен = Справочники.Номенклатура.НайтиПоНаименованию(ИмяНоменклатуры); //поискали номенклатуру Если Номен.Пустая() Тогда //ничего не нашли в справочнике номенклатуры НоваяНоменклатура = Объект.ПереченыНоменклатуры.Добавить(); НоваяНоменклатура.Номенклатура = Номен; НоваяНоменклатура.Цена = Число(ЦенаНоменклатуры); // тут сам установи защиту от букв в цене КонецЕсли; //убери |
|||
27
Fedor-1971
27.09.17
✎
14:28
|
26+ ошибочка вышла Если НЕ Номен.Пустая() Тогда //что-то таки нашли
|
|||
28
savage_pro
27.09.17
✎
14:29
|
(22) обычная форма
|
|||
29
savage_pro
27.09.17
✎
14:41
|
{Документ.Продажа.Форма.ФормаДокумента.Форма(83)}: Преобразование значения к типу Число не может быть выполнено
НоваяНоменклатура.Цена = Число(ЦенаНоменклатуры); |
|||
30
savage_pro
27.09.17
✎
14:43
|
(26) тут ошибка дает
|
|||
31
Fedor-1971
27.09.17
✎
14:44
|
(29) и? в ЦенаНоменклатуры не только цифры
Замени Число(СокрЛП(ЦенаНоменклатуры)) и оберни Попытка-Исключение-КонецПопытки тут уж сам |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |