Реклама на этом месте
Форум 1С
Форум 1С
Программистам. Бухгалтерам. Администраторам. Пользователям
Задай вопрос - получи решение проблемы. Без троллинга и флуда.
17 Дек 2017, 01:42
МультиВход
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Не получили письмо с кодом активации?
 
collapse

Автор Тема: Загрузка из текстового файла в БГУ  (Прочитано 3722 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Natalyagrom

  • *
  • Сообщений: 12
  • РЕПУТАЦИЯ: 1
  • КПД: 8%
  • Регистрация: 2010-09-06
  • Сайт: 
Здравствуйте!
Помогите, пожайлуста, с кодом, если можно. В 8-ке мы новички, написали загрузку из текстового файла.(переделали из найденной в инете)
Обработка подключается в БГУ-
Сервис - Дополнительные отчеты и обработки - Дополнительные внешние обработки табличных частей.
Представление объекта - Документ Поступление родительской оплаты на л/с. , табличная часть - Оплата.

В самом документе Поступление род.опл. на закладке Оплата по кнопке заполнить выбирается подключенная обработка.  Выбирается текстовый файл, который надо загрузить, нажимается кнопка - Загрузить TXT/CSV . Временная таблица заполняется, и по кнопке Выполнить данные должны переходить в документ. А они не переходят. В этом проблема.
Подскажите, где ошибка в коде..

Фрагмент кода
Процедура ОсновныеДействияФормыВыполнить(Кнопка)
      
      Для каждого стр из ТП Цикл
         Состояние("Добавление " + стр.Номер + " из " + ТП.Количество());
         Попытка
            тов = объектДокумент.Оплата.Добавить();
            тов.Ребенок = стр.Ребенок;
            тов.Сумма = стр.Сумма;
                                                            Если Число(стр.Номер) > 6 Тогда прервать; КонецЕсли;
         Исключение
            Сообщить("Ошибка добавления " + стр.Артикул + " : " + ОписаниеОшибки());
         КонецПопытки;
         
      КонецЦикла;         
   
      //КонецЕсли;
   
   ЭтаФорма.Закрыть("ОК");
   
КонецПроцедуры

Процедура ЗагрузитьTXTНажатие(Элемент)
   
   ПотокЧтения = ПрочитатьФайл(ИмяФайла);
      
   Если ПотокЧтения = Неопределено тогда
      Сообщить("Ошибка открытия файла " + ИмяФайла + " для чтения.");
      Возврат;
   КонецЕсли;
      
   ФормаПрогрессора = ПолучитьОбщуюФорму("ХодВыполненияОбработкиДанных");
      
   Если ФормаПрогрессора.Открыта() Тогда
      ФормаПрогрессора.Закрыть();
   КонецЕсли;
      
   ФормаПрогрессора.Значение = 1;
   ВсегоСтрок = СтрЧислоСтрок(ПотокЧтения);
   
   ФормаПрогрессора.МаксимальноеЗначение = ВсегоСтрок;
   ФормаПрогрессора.Открыть();
   ФормаПрогрессора.КомментарийОбработкиДанных = "Загрузка данных";
   
   ТекстКорзины = "";
   ТП.Очистить();
   
   Пока ФормаПрогрессора.Значение < ФормаПрогрессора.МаксимальноеЗначение Цикл
         
      ФормаПрогрессора.Значение = ФормаПрогрессора.Значение + 1;
      ТекСтрока = СтрПолучитьСтроку(ПотокЧтения, ФормаПрогрессора.Значение);
      ТекстКорзины = ТекстКорзины + Символы.ПС + ТекСтрока;
      ФормаПрогрессора.Обновить();
      
      // Определим, что текст разделен разделителем "|"
      Если Найти(ТекСтрока,";") > 0 Тогда
         Попытка
            инф = ОбщегоНазначения.РазложитьСтрокуВМассивПодстрок( ТекСтрока, ";");
            Реб = Справочники.Дети.НайтиПоКоду(инф[2]);
            Если Реб.Пустая() Тогда
               Сообщить("Не найден ребенок с лицевым счетом: " + инф[2]);
               продолжить;
            КонецЕсли;
            стр = ТП.Добавить();
            стр.Ребенок = Реб;
            стр.Лицсчет = инф[2];
            
            стр.Сумма = инф[3];
            стр.Номер = ТП.Количество() + 1;
            Если Число(стр.Номер) > 6 Тогда прервать; КонецЕсли;
         Исключение
            Сообщить("Ошибка обработки строки: " + ФормаПрогрессора.Значение, СтатусСообщения.Внимание);
            Сообщить(ОписаниеОшибки());
         КонецПопытки;
         
      КонецЕсли;
   
   КонецЦикла;   
      
   ФормаПрогрессора.Закрыть();

КонецПроцедуры


Оффлайн Natalyagrom

  • *
  • Сообщений: 12
  • РЕПУТАЦИЯ: 1
  • КПД: 8%
  • Регистрация: 2010-09-06
  • Сайт: 
// Определим, что текст разделен разделителем "|"
      Если Найти(ТекСтрока,";") > 0 Тогда
         Попытка
            инф = ОбщегоНазначения.РазложитьСтрокуВМассивПодстрок( ТекСтрока, ";");
            Реб = Справочники.Дети.НайтиПоКоду(инф[2]);
            Если Реб.Пустая() Тогда
               Сообщить("Не найден ребенок с лицевым счетом: " + инф[2]);
               продолжить;
            КонецЕсли;
            стр = ТП.Добавить();
            стр.Ребенок = Реб;
            стр.Лицсчет = инф[2];
            
            стр.Сумма = инф[3];
            стр.Номер = ТП.Количество() + 1;
            Если Число(стр.Номер) > 6 Тогда прервать; КонецЕсли;
         Исключение
            Сообщить("Ошибка обработки строки: " + ФормаПрогрессора.Значение, СтатусСообщения.Внимание);
            Сообщить(ОписаниеОшибки());
         КонецПопытки;
         
      КонецЕсли;
   
   КонецЦикла;   
      
   ФормаПрогрессора.Закрыть();

КонецПроцедуры

Оффлайн Natalyagrom

  • *
  • Сообщений: 12
  • РЕПУТАЦИЯ: 1
  • КПД: 8%
  • Регистрация: 2010-09-06
  • Сайт: 
Почему то не помещается полностью..((
// Определим, что текст разделен разделителем "|"
      Если Найти(ТекСтрока,";") > 0 Тогда
         Попытка
            инф = ОбщегоНазначения.РазложитьСтрокуВМассивПодстрок( ТекСтрока, ";");
            Реб = Справочники.Дети.НайтиПоКоду(инф[2]);
            Если Реб.Пустая() Тогда
               Сообщить("Не найден ребенок с лицевым счетом: " + инф[2]);
               продолжить;
            КонецЕсли;
            стр = ТП.Добавить();
            стр.Ребенок = Реб;
            стр.Лицсчет = инф[2];
            
            стр.Сумма = инф[3];
            стр.Номер = ТП.Количество() + 1;
            Если Число(стр.Номер) > 6 Тогда прервать; КонецЕсли;
         Исключение
            Сообщить("Ошибка обработки строки: " + ФормаПрогрессора.Значение, СтатусСообщения.Внимание);
            Сообщить(ОписаниеОшибки());
         КонецПопытки;
         
      КонецЕсли;
   
   КонецЦикла;   
      
   ФормаПрогрессора.Закрыть();

КонецПроцедуры

Оффлайн has

  • Модератор
  • *****
  • Сообщений: 1308
  • РЕПУТАЦИЯ: 285
  • КПД: 22%
  • Регистрация: 2011-01-28
  • Сайт: 
  • Профессия: Программист 1С
Пройдитесь отладчиком, ошибку быстро найдете. А так по коду не скажешь где именно ошибка.


Теги:
 

Ошибка при загрузке данных через (Обработка "Выгрузка и загрузка данных XML")

Автор Сергей_87Раздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 8574
Последний ответ 26 Апр 2012, 23:08
от Dethmontt
загрузка из "клиента банка"

Автор miximlРаздел Пользователям "1С - Предприятие 8"

Ответов: 1
Просмотров: 2694
Последний ответ 19 Июн 2012, 09:49
от miximl
Загрузка в 1С Управление Торговлей 11.1.5.16 электронных выписок из клиент банка "Альфа-Банк"

Автор regnusРаздел Пользователям "1С - Предприятие 8"

Ответов: 0
Просмотров: 12004
Последний ответ 11 Июл 2014, 17:22
от regnus
Проблема с внешней обработкой "Загрузка банк-клиент.erp"

Автор razielРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 6
Просмотров: 2156
Последний ответ 24 Сен 2015, 20:13
от Kironten
Загрузка из "нестандартного" табличного документа (exel) в справочник

Автор uchenichokРаздел Конфигурирование, программирование в "1С - Предприятие 8"

Ответов: 1
Просмотров: 1000
Последний ответ 03 Июн 2016, 07:15
от cska-fanat-kz

* Живое общение

Не устроил ответ?

Зарегистрируйся и задай свой вопрос. Живое общение приносит результат намного быстрее.


Зарегистрироваться

* Реклама

* Поиск

* Последние задачи на разработку (фриланс)

* Реклама

* Последние вакансии

* Топ 10 авторов за месяц

Геннадий ОбьГЭС Геннадий ОбьГЭС
142 Сообщений
ilyay ilyay
63 Сообщений
alex0402
50 Сообщений
AIFrame
50 Сообщений
andron81_81
44 Сообщений
oleg-x
42 Сообщений
BuhRust
32 Сообщений
MuI_I_Ika MuI_I_Ika
31 Сообщений
Golickoff Golickoff
28 Сообщений
Dima Dddd Dima Dddd
24 Сообщений

* Кто онлайн

  • Точка Гостей: 140
  • Точка Скрытых: 0
  • Точка Пользователей: 1
  • Точка Сейчас на форуме:

* Облако тэгов

* Форум 1С с мобильного

* Инструменты

* Дополнительно

Поиск

 
SimplePortal 2.3.5 © 2008-2012, SimplePortal