![]() |
![]() |
![]() |
|
v7: Помогите в написании кода | ☑ | ||
---|---|---|---|---|
0
sssssergey
21.04.07
✎
19:46
|
Делаю выгрузку избюджетной конфиги в самописную в формате XML. Выгрузка прошла ОК, файл сформирован. А вот загрузка не получается
Код: //******************************************************************************** Процедура ВыборФайлаЗагрузки(ИмяФайла, Фильтр="xml") Каталог = ""; Стр = "Файл настройки (*." + Фильтр + ")|*." + Фильтр + ""; Если ФС.ВыбратьФайл(0, ИмяФайла, Каталог, "Выберите файл", Стр, , ) = 1 Тогда ИмяФайла = Каталог + ИмяФайла; КонецЕсли; КонецПроцедуры //******************************************************************************** Процедура ВыборФайла(ИмяФайла, Фильтр="xml") Каталог = ""; Стр = "Файл настройки (*." + Фильтр + ")|*." + Фильтр + ""; Если ФС.ВыбратьФайл(0, ИмяФайла, Каталог, "Выберите файл", Стр, , ) = 1 Тогда ИмяФайла = Каталог + ИмяФайла; КонецЕсли; КонецПроцедуры //******************************************************************************** Процедура ПриНачалеВыбораЗначения(ИдЭлементаДиалога, Фл) Если ИдЭлементаДиалога = "ИмяФайлаЗагрузки" Тогда ВыборФайла(ИмяФайлаЗагрузки, "xml"); КонецЕсли; КонецПроцедуры //******************************************* //******************************************************************************** Процедура Загрузить() Если ЗагрузитьВнешнююКомпоненту(КаталогИБ() + "v7plus.dll") <> 1 Тогда Если ЗагрузитьВнешнююКомпоненту(КаталогПрограммы() + "v7plus.dll") <> 1 Тогда Предупреждение("Компонента v7plus.dll не найдена!"); КонецЕсли; КонецЕсли; Анализатор = СоздатьОбъект("AddIn.XMLParser"); гФайл = Анализатор.СоздатьПоследовательноСчитываемыйДокумент(); гФайл.СвязатьСФайлом(ИмяФайлаЗагрузки); Док = СоздатьОбъект("Документ.Операция"); СпрНоменклатура = СоздатьОбъект("Справочник.Номенклатура"); ТипТега = гФайл.Спуститься(); Док.Новый(); ЗапомнилиКод = ""; Пока ТипТега <> 4 Цикл Если ТипТега <> 1 Тогда ТипТега = гФайл.Следующий(); Продолжить КонецЕсли; // пропускаем концы уровней и инструкции ИмяТега = гФайл.СвойстваТекущегоУзла.Имя; Если ИмяТега = "СтрокаТаблици" Тогда Док.НоваяСтрока(); док.Записать(); ТипТега = гФайл.Спуститься(); Продолжить; ИначеЕсли ИмяТега = "НомерСтроки" Тогда Объект = гФайл.ТекущийЭлементВВидеОбъекта(); ЗапомнилиСтроку = Объект.Значение; ТипТега = гФайл.Спуститься(); Продолжить; ИначеЕсли ИмяТега = "ТекКодНоменклатура" Тогда Объект = гФайл.ТекущийЭлементВВидеОбъекта(); ЗапомнилиКод = Объект.Значение; ТипТега = гФайл.Спуститься(); Продолжить; ИначеЕсли ИмяТега = "ТекНоменклатура" Тогда //ДатаДок Входящий Объект = гФайл.ТекущийЭлементВВидеОбъекта(); Если СпрНоменклатура.НайтиПоКоду(ЗапомнилиКод,0) = 1 Тогда Если Док.ПолучитьСтрокуПоНомеру(ЗапомнилиСтроку) =1 Тогда Док.Номенклатура = СпрНоменклатура.ТекущийЭлемент(); КонецЕсли; Иначе СпрНоменклатура.Новый(); СпрНоменклатура.Код = ЗапомнилиКод; СпрНоменклатура.Наименование = Объект.Значение; СпрНоменклатура.Записать(); Если Док.ПолучитьСтрокуПоНомеру(ЗапомнилиСтроку) =1 Тогда Док.Номенклатура = СпрНоменклатура.ТекущийЭлемент(); КонецЕсли; //Док.Номенклатура = СпрНоменклатура; КонецЕсли; ТипТега = гФайл.Спуститься(); Продолжить; ИначеЕсли ИмяТега = "ТекКонСальдоК" Тогда Объект = гФайл.ТекущийЭлементВВидеОбъекта(); Если Док.ПолучитьСтрокуПоНомеру(ЗапомнилиСтроку) =1 Тогда Док.Количество = Объект.Значение; КонецЕсли; ТипТега = гФайл.Спуститься(); Продолжить; Иначе ТипТега = гФайл.Спуститься(); Продолжить; КонецЕсли; ТипТега = гФайл.Следующий(); КонецЦикла; Если Док.Выбран() = 1 Тогда Док.Провести(); КонецЕсли; КонецПроцедуры //********************************************************************************КонецПроцедуры у меня не выполняется условие: Если Док.ПолучитьСтрокуПоНомеру(ЗапомнилиСтроку) =1 Тогда Док.Номенклатура = СпрНоменклатура.ТекущийЭлемент(); КонецЕсли; Может че не так делаю??? подскажите |
|||
1
ТелепатБот
гуру
21.04.07
✎
19:46
|
Книга знаний: Файловая система (ФС)
Книга знаний: Пример работы с файлами DBF по интерфейсу ADO из 1С v 7.7 Книга знаний: Множественный отбор в журналах и справочниках 7.7 заменой запросов SQL Книга знаний: Выгрузка справочника в Excel Книга знаний: Отбор по нескольким реквизитам в журнале (www.sinor.ru) Книга знаний: Загрузка внешних компонент 1С: проблемы и решения |
|||
2
sssssergey
21.04.07
✎
19:50
|
Все спасибо сам вьехал где косяк
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |