• 15 апреля стартует «Курс «SQL-injection Master» ©» от команды The Codeby

    За 3 месяца вы пройдете путь от начальных навыков работы с SQL-запросами к базам данных до продвинутых техник. Научитесь находить уязвимости связанные с базами данных, и внедрять произвольный SQL-код в уязвимые приложения.

    На последнюю неделю приходится экзамен, где нужно будет показать свои навыки, взломав ряд уязвимых учебных сайтов, и добыть флаги. Успешно сдавшие экзамен получат сертификат.

    Запись на курс до 25 апреля. Получить промодоступ ...

Заполнение справочника Номенклатура

  • Автор темы Guest
  • Дата начала
G

Guest

Необходимо, чтобы прграмма сама создавала несколько справочников номенклатуры, однако ничего не получается - постоянно просит ввести "Базовую единицу товара".... где в моем коде ошибка???
Код:
Спр = правочники.Номенклатура.СоздатьЭлемент();
// Заполняю основные поля
Спр.Наименование = "Всяка фигня";
Cпр.БазоваяЕдиницаИзмерения = Справочники.ЕдиницыИзмерения.НайтиПоНаименованию("шт");	 // Штуки 100% вбиты в пользовательском режиме;
Спр.ВидНоменклатуры = справочники.ВидыНоменклатуры.Игрушки;												 // Предустановленный параметр;
Спр.Записать();
И после этого этот засранец пишет мне:
"Перед записью в элементе справочника "Номенклатура" необходимо заполнить "базовая единица"!"

P.S.: По коду если поиск делать, то тоже не подставляет... А предустановка в ЕдиницыИзмерения запрещена коимто боком...

Это шо-то с полем ЕдиницыИзмерения непонятное творится.... Пишу аналогично на ВидНоменклатуры
Код:
ВидНоменклатуры = Справочники.ВидыНоменклатуры.НайтиПоНаименованию("Услуга");
... и всевстает туда, а с Единицами борода какая-то....
 
K

kaa

Спр = правочники.Номенклатура.СоздатьЭлемент();
СпрЕ=СоздатьОбъект("Спраовочник.ЕдиницыИзмереия");

// Заполняю основные поля
Спр.Наименование = "Всяка фигня";
Если СпрЕ.НайтиПоНаименованию("шт") = 1 Тогда//ЗДЕСЬ НАДО РАЗОБРАТЬСЯ ПОДЧИНЕННЫЙ ЛИ СПРАВОЧНИК ЕДИНИЦЫ ИЛИ НЕТ
Cпр.БазоваяЕдиницаИзмерения = СпрЕ.ТекущийЭлемент(); // Штуки 100% вбиты в пользовательском режиме;
Иначе
Сообщить("Нет единицы");
Возврат;
КонецЕсли;
Спр.ВидНоменклатуры = справочники.ВидыНоменклатуры.Игрушки; // Предустановленный параметр;
Спр.Записать();
 
G

Guest

Матюкается на эту строчку... Процедура или функция с указанным именем не определена (СоздатьОбъект)..
Код:
СпрЕ=СоздатьОбъект("Спраовочник.ЕдиницыИзмереия");
 
G

gorlanovmax

Матюкается на эту строчку... Процедура или функция с указанным именем не определена (СоздатьОбъект)..
СпрЕ=СоздатьОбъект("Спраовочник.ЕдиницыИзмереия");

СпрЕ=СоздатьОбъект("Справочник.ЕдиницыИзмерения");
Чистая орфография
 
G

Guest

Было бы дело в орфографии я бы не писал... вот что говорит:

{Обработка.Обработка1.Форма.Форма(8,7)}: Процедура или функция с указанным именем не определена (СоздатьОбъект)
СпрЕ=<<?>>СоздатьОбъект("Справочник.ЕдиницыИзмерения");
 
P

puh14

{Обработка.Обработка1.Форма.Форма(8,7)}: Процедура или функция с указанным именем не определена (СоздатьОбъект)
СпрЕ=<<?>>СоздатьОбъект("Справочник.ЕдиницыИзмерения");

ну я понимаю чтобы ругался на модуль формы - но Обработка.Обработка1.Форма.Форма(8,7) - этож куда ты её записал?
 
G

Guest

Хочу пояснить... работаю в среде 1С 8.1 Управление Торговлей 10.3.5.1
Предложенный код не подходит... 3й день голову ломаю... причину понять никак не могу, почему в ВидНоменклатуры все нормальновстает, а в Единицы нишиша....

Создал Обработку и повесил код на кнопку при нажатии....
 
G

Guest

Обновил до версии 10.3.7.8 и все равно пишет мне
Перед записью в элементе справочника "Номенклатура" необходимо заполнить "базовая единица"!

Что есче за "базовая единица"????
 
K

kaa

Затупил :D для 8
Спр = Справочники.Номенклатура.СоздатьЭлемент();
СпрЕ = Справочники.ЕдиницыИзмерения;

// Заполняю основные поля
Спр.Наименование = "Всяка фигня";
Ед = СпрЕ.НайтиПоНаименованию("шт");//ЗДЕСЬ НАДО РАЗОБРАТЬСЯ ПОДЧИНЕННЫЙ ЛИ СПРАВОЧНИК ЕДИНИЦЫ ИЛИ НЕТ
Если Ед<>СпрЕ.ПустаяСсылка() Тогда
Cпр.БазоваяЕдиницаИзмерения = Ед.Ссылка; // Штуки 100% вбиты в пользовательском режиме;
Иначе
Сообщить("Нет единицы");
Возврат;
КонецЕсли;
Спр.ВидНоменклатуры = справочники.ВидыНоменклатуры.Игрушки; // Предустановленный параметр;
Спр.Записать();
 
G

Guest

все разобрался!!!.... "Невнимательность Плять..."
надо было штуки брать из другого справочника:

Код:
Спр.БазоваяЕдиницаИзмерения = Справочники.КлассификаторЕдиницИзмерения.НайтиПоНаименованию("шт");
 
G

Guest

вот такой есче масенький вопрос вдогонку.... в Справочнике Номенклатура есть Табличное поле "Штрихкоды"... как обратиться к его полям из внешней формы???
 
U

unknown181538

Если Вы имеете ввиду табл. часть, то через точку : Спр.Штрихкоды
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!