|
Перед записью в элементе справочника "Номенклатура" необходимо заполнить "базова | ☑ | ||
---|---|---|---|---|
0
den17
06.06.12
✎
12:09
|
Здравствуйте, припопытке загрузки из dbf файла в УТ возникает ошибка: Перед записью в элементе справочника "Номенклатура" необходимо заполнить "базовая единица"
|
|||
1
den17
06.06.12
✎
12:09
|
Процедура КнопкаВыполнитьНажатие(Кнопка)
ДБФ = Новый XBase; ДБФ.ОткрытьФайл("C:\tov.dbf"); //Справочники.Номенклатура.СоздатьГруппу("345"); ////////////////////////////////////////////////////////////////////////////// НовыйЭлемент = Справочники.КлассификаторЕдиницИзмерения.СоздатьЭлемент(); //НовыйЭлемент. НовыйЭлемент.Код = "0000020"; НовыйЭлемент.Наименование = "шт"; НовыйЭлемент.Записать(); //НовыйЭлемент3 = Перечисления.ТипыНоменклатуры.Товар; //НовыйЭлемент3.Наименование = "Товар"; //НовыйЭлемент3.Записать(); НовыйЭлемент2 = Справочники.ВидыНоменклатуры.СоздатьЭлемент(); НовыйЭлемент2.ТипНоменклатуры = Перечисления.ТипыНоменклатуры.Товар; НовыйЭлемент2.Наименование = "Кронштейны"; НовыйЭлемент2.Записать(); Сообщить(ОписаниеОшибки()); //НоваяНоменклатура.БазоваяЕдиницаИзмерения = ДБФ.BazEdIzm; Пока ДБФ.Следующая() Цикл НоваяНоменклатура = Справочники.Номенклатура.СоздатьЭлемент(); НоваяНоменклатура.БазоваяЕдиницаИзмерения = Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию("шт"); НоваяНоменклатура.БазоваяЕдиницаИзмерения = ДБФ.ПолучитьЗначениеПоля("BazEdIzm"); НоваяНоменклатура.ВидНоменклатуры = НовыйЭлемент2.Ссылка; НоваяНоменклатура.Код = ДБФ.ПолучитьЗначениеПоля("CODE"); НоваяНоменклатура.Наименование = ДБФ.ПолучитьЗначениеПоля("NAME"); //НоваяНоменклатура.ВидНоменклатуры = ДБФ.gruppa2; //Справочники.Номенклатура.СоздатьГруппу(ДБФ.gruppa1); //Справочники.Номенклатура.СоздатьЭлемент() //НоваяНоменклатура.Услуга = ДБФ.SERVICE; //НоваяНоменклатура.Цена = ДБФ.PRICE; НоваяНоменклатура.Записать(); КонецЦикла; ДБФ.ЗакрытьФайл(); КонецПроцедуры |
|||
2
birkoFFFF
06.06.12
✎
12:09
|
Ну все правильно, а что ты хотел ?
|
|||
3
den17
06.06.12
✎
12:09
|
Не скажете, что не так?
|
|||
4
pumbaEO
06.06.12
✎
12:10
|
Решение:
1. Выполнять требования программы 2. Вежливо попросить "ОбменДанными.Загрузка = Истина" |
|||
5
birkoFFFF
06.06.12
✎
12:11
|
(4) Ругаться перестанет, но базовую единицу все равно не заполнит )
|
|||
6
den17
06.06.12
✎
12:12
|
прямо так и написать?
|
|||
7
Maxus43
06.06.12
✎
12:12
|
(3) ед изм создаётся в при записи ФОРМЫ, погляди там алгоритм, чтоб всё было по феншую. Или юзай ЗаписатьВФорме
|
|||
8
shuhard
06.06.12
✎
12:13
|
(6) или (7) или :
ШтПоКлассификатору=Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию("шт"); НоваяЕдиницаИзмерения=Справочники.ЕдиницыИзмерения.СоздатьЭлемент(); // уникальная ссылка для подстановки в товар НоваяссылкаЕдиницыИзмерения=Справочники.ЕдиницыИзмерения.ПолучитьСсылку();// уникальная ссылка НоваяЕдиницаИзмерения.УстановитьСсылкуНового(НоваяссылкаЕдиницыИзмерения); НоваяЕдиницаИзмерения.ПолучитьСсылкуНового(); НоваяЕдиницаИзмерения.ЕдиницаПоКлассификатору=ШтПоКлассификатору; НоваяЕдиницаИзмерения.Коэффициент=1; НоваяЕдиницаИзмерения.Наименование="шт."; // не записываем раньше товара, поскольку нет владельца НовыйТовар=Справочники.Номенклатура.СоздатьЭлемент(); НовыйТовар.ЕдиницаХраненияОстатков=НоваяссылкаЕдиницыИзмерения; НовыйТовар.Артикул="А"+(Ст); НовыйТовар.БазоваяЕдиницаИзмерения=ШтПоКлассификатору; НовыйТовар.ВидВоспроизводства=Перечисления.ВидыВоспроизводстваНоменклатуры.Закупка; НовыйТовар.Наименование="Шланг №"+Формат(Ст,"ЧЦ=4; ЧВН=; ЧГ=0"); // нужно ведущие нули НовыйТовар.СтавкаНДС=Перечисления.СтавкиНДС.НДС18; Новыйтовар.ВидНоменклатуры=Справочники.ВидыНоменклатуры.НайтиПоКоду("000000001"); НовыйТовар.Записать(); // товар записан со ссылкой на единицу измерения, которой в базе нет и в самой ссылке видим объект не найден НоваяЕдиницаИзмерения.Владелец=НовыйТовар.Ссылка; НоваяЕдиницаИзмерения.Записать(); |
|||
9
den17
06.06.12
✎
12:53
|
пишет Значение поля "Владелец" не заполнено или заполнено неверно
|
|||
10
shuhard
06.06.12
✎
12:54
|
(9) нет ни чего глупее, чем привести ошибку без кода
|
|||
11
den17
06.06.12
✎
12:55
|
ДБФ = Новый XBase;
ДБФ.ОткрытьФайл("C:\tov.dbf"); НовыйЭлемент2 = Справочники.ВидыНоменклатуры.СоздатьЭлемент(); НовыйЭлемент2.ТипНоменклатуры = Перечисления.ТипыНоменклатуры.Товар; НовыйЭлемент2.Наименование = "Кронштейны"; НовыйЭлемент2.Записать(); Пока ДБФ.Следующая() Цикл НоваяНоменклатура = Справочники.Номенклатура.СоздатьЭлемент(); ШтПоКлассификатору=Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию("шт"); НоваяЕдиницаИзмерения=Справочники.ЕдиницыИзмерения.СоздатьЭлемент(); // уникальная ссылка для подстановки в товар НоваяссылкаЕдиницыИзмерения=Справочники.ЕдиницыИзмерения.ПолучитьСсылку();// уникальная ссылка НоваяЕдиницаИзмерения.УстановитьСсылкуНового(НоваяссылкаЕдиницыИзмерения); НоваяЕдиницаИзмерения.ПолучитьСсылкуНового(); НоваяЕдиницаИзмерения.ЕдиницаПоКлассификатору=ШтПоКлассификатору; НоваяЕдиницаИзмерения.Коэффициент=1; НоваяЕдиницаИзмерения.Наименование="шт."; // не записываем раньше товара, поскольку нет владельца //НовыйТовар=Справочники.Номенклатура.СоздатьЭлемент(); // НовыйТовар.ЕдиницаХраненияОстатков=НоваяссылкаЕдиницыИзмерения; // НовыйТовар.Артикул="А"+(Ст); НоваяНоменклатура.БазоваяЕдиницаИзмерения=ШтПоКлассификатору; // НовыйТовар.ВидВоспроизводства=Перечисления.ВидыВоспроизводстваНоменклатуры.Закупка; // НовыйТовар.Наименование="Шланг №"+Формат(Ст,"ЧЦ=4; ЧВН=; ЧГ=0"); // нужно ведущие нули // // НовыйТовар.СтавкаНДС=Перечисления.СтавкиНДС.НДС18; // Новыйтовар.ВидНоменклатуры=Справочники.ВидыНоменклатуры.НайтиПоКоду("000000001"); // НовыйТовар.Записать(); НоваяНоменклатура.ВидНоменклатуры = НовыйЭлемент2.Ссылка; НоваяНоменклатура.Код = ДБФ.ПолучитьЗначениеПоля("CODE"); НоваяНоменклатура.Наименование = ДБФ.ПолучитьЗначениеПоля("NAME"); // товар записан со ссылкой на единицу измерения, которой в базе нет и в самой ссылке видим объект не найден НоваяЕдиницаИзмерения.Владелец=НоваяНоменклатура.Ссылка; НоваяЕдиницаИзмерения.Записать(); КонецЦикла; ДБФ.ЗакрытьФайл(); |
|||
12
den17
06.06.12
✎
12:58
|
помогите пожалуста)
|
|||
13
shuhard
06.06.12
✎
12:59
|
(11) чё за бред:
где запись товара где единица измерения остатков |
|||
14
den17
06.06.12
✎
13:03
|
А, да, Запись товара добавил..
|
|||
15
den17
06.06.12
✎
13:07
|
Нихрена себе, сработало!! Спасибо бооооооооольше вам))
|
|||
16
den17
06.06.12
✎
13:07
|
Миста зэ бэст
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |