![]() |
|
Модераторы: stron |
![]()
|
|
| pharaone |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 17 Регистрация: 8.1.2007 Репутация: нет Всего: нет |
Имеется файл tovar.dbf. Нужно перекинуть данные в 7-у, Бухгалтерию. Все переносится кроме ставок НДС и НП. Код обработки:
Функция ПроверитьИсходныеДанные() Если ПустоеЗначение(ФормИмяФайлаДанных) = 1 Тогда Предупреждение("Не выбран файл данных!"); Возврат(0); КонецЕсли; Если ФС.СуществуетФайл(ФормИмяФайлаДанных) = 0 Тогда Предупреждение("Указанный файл данных не существует!"); Возврат(0); КонецЕсли; Возврат(1); КонецФункции //****************************************************************************** Процедура Сформировать() ПроверитьИсходныеДанные(); ДатаВвода = Дата("01.01.06"); БазаТоваров = СоздатьОбъект("XBase"); БазаТоваров.ОткрытьФайл(ФормИмяФайлаДанных,,1); КолЗаписей = БазаТоваров.КоличествоЗаписей(); Если КолЗаписей=0 Тогда Сообщить("Пустой файл "+ФормИмяФайлаДанных,"!"); Возврат; КонецЕсли; СпрТоваров = СоздатьОбъект("Справочник.Номенклатура"); СпрТов = СоздатьОбъект("Справочник.Номенклатура"); СпрЕдИзм = СоздатьОбъект("Справочник.ЕдиницыИзмерений"); СпрНДС = СоздатьОбъект("Справочник.СтавкиНДС"); СпрНП = СоздатьОбъект("Справочник.СтавкиНП"); СпрВал = СоздатьОбъект("Справочник.Валюты"); СпрТов.НайтиПоНаименованию("Товары"); Для НомерЗаписи = 1 по КолЗаписей Цикл БазаТоваров.Перейти(НомерЗаписи); Код = "000" + СокрЛ(БазаТоваров.NOM); Если СпрТоваров.НайтиПоКоду(Код)=1 Тогда Сообщить(""+Код+" - уже существует"); Продолжить; Иначе СпрТоваров.Новый(); СпрТоваров.Код = Код; СпрТоваров.ТипНоменклатуры = Перечисление.ТипыНоменклатуры.ЗначениеПоИдентификатору("Товар"); СпрТоваров.ТипТовара = Перечисление.ТипыТоваров.ЗначениеПоИдентификатору("Собственный"); СпрТоваров.Наименование = СокрЛП(БазаТоваров.NAME_TOV); Если СокрЛП(БазаТоваров.NDS) = "ИСТИНА" Тогда НДС = СокрЛП(БазаТоваров.NDC) + "%"; СпрНДС.НайтиПоНаименованию(НДС); СпрТоваров.СтавкаНДС.Установить(ДатаВвода, СпрНДС.ТекущийЭлемент()); Иначе НДС0 = "Без налога (НДС)"; СпрНДС.НайтиПоНаименованию(НДС0); СпрТоваров.СтавкаНДС.Установить(ДатаВвода, СпрНДС.ТекущийЭлемент()); // КонецЕсли; НП = "Без налога (НП)"; СпрНП.НайтиПоНаименованию(НП); // СпрТоваров.СтавкаНП.Установить(ДатаВвода, СпрНП.ТекущийЭлемент()); Изм = "шт"; СпрЕдИзм.НайтиПоНаименованию(Изм); СпрТоваров.ЕдиницаИзмерения = СпрЕдИзм.ТекущийЭлемент(); СпрТоваров.СтранаПроисхожд = 1; СпрТоваров.ПолнНаименование = СокрЛП(БазаТоваров.NAME_TOV); СпрТоваров.ПорядокХраненияОтпускнойЦены = 1; СпрТоваров.Цена = СокрЛП(БазаТоваров.CENA_UCH); СпрТоваров.Себестоимость = СокрЛП(БазаТоваров.CENA_PRI); СпрТоваров.Родитель = СпрТов.ТекущийЭлемент(); СпрТоваров.Записать(); Сообщить("Создан Товар с кодом "+Код); КонецЕсли; КонецЦикла; // ОпОстатковМПЗ.Записать(); БазаТоваров.ЗакрытьФайл(); КонецПроцедуры //-------------------------------------------------------------------------------------------------- Процедура ВыборФайла(ИмяФайла, Фильтр="dbf") Каталог = ""; Стр = "Файл настройки (*." + Фильтр + ")|*." + Фильтр + ""; Если ФС.ВыбратьФайл(0, ИмяФайла, Каталог, "Выберите файл", Стр, , ) = 1 Тогда ИмяФайла = Каталог + ИмяФайла; КонецЕсли; КонецПроцедуры //------------------------------------------------------------------------------------------------ Процедура ПриНачалеВыбораЗначения(ИдЭлементаДиалога, Фл) Если ИдЭлементаДиалога = "ФормИмяФайлаДанных" Тогда ВыборФайла(ФормИмяФайлаДанных, "dbf"); КонецЕсли; КонецПроцедуры На строчке: СпрТоваров.СтавкаНДС.Установить(ДатаВвода, СпрНДС.ТекущийЭлемент()); ошибка:"Не выбран элемент". Вроде бы я верный метод использую "Установить" (метод периодических реквизитов) Так в чем же дело, не пойму? |
|||
|
||||
| _Valery_ |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 153 Регистрация: 22.1.2007 Где: Москва, Вешняки Репутация: 6 Всего: 6 |
Значения периодических реквизитов можно устанавливать, используя объект "Периодический".
Почитай в Синтаксис-помощнике как его использовать. У меня были как-то заморочки с установкой периодических реквизитов, когда метод Установить не работал - я сделала через Периодический... --------------------
Ты добрый, это хорошо. Это по жизни очень пригодится...другим. |
|||
|
||||
![]()
|
| Правила форума "1C: Предприятие, SAP, ERP и учётные системы" | |
|
|
Запрещается! 1. Обсуждение крэков, кейгенов и других подобных программ Пробуйте искать сами или обращайтесь в приват к участникам форума. Темы с подобными вещами будут немедленно удаляться, а нарушители - получать предупреждения. Также запрещается обсуждение проблем работы этих программ (что куда вписать, куда что скопировать и т.п...) 2. Давать ссылки на взломанные продукты
|
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | 1C: Предприятие, SAP, ERP и учётные системы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |