Версия для печати темы (https://pro1c.org.ua/index.php?s=f451732f52990cf56cb5a4225124b645&showtopic=67728)

Нажмите сюда для просмотра этой темы в обычном формате

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 _ Программирование в 1С Предприятие 8.3 _ додавання запису в реєстр ОСНОВНІ СПЕЦИФІКАЦІЇ НОМЕНКЛАТУРИ

Автор: berest.andriy 24.01.25, 16:18

привіт. намагаюся створити запис (буде багато записів) в реєстр Основні специфікації номенклатури. але замість нових записів отримав видалення всіх даних реєстру.

маю значення Номенклатура та Специфікація Номенклатури

намагаюся додати ці значення в реєстр Основні специфікації номенклатури

ОсновнаСпецифікація=РегистрыСведений.ОсновныеСпецификацииНоменклатуры.СоздатьНаборЗаписей();
новийзапис=основнаспецифікація.Добавить();
новийзапис.период=текущаядата();
новийзапис.номенклатура=номенклатура;
новийзапис.спецификацияноменклатуры=специфікація;
основнаспецифікація.Записать();


що я роблю не так?


1С:Предприятие 8.3 (8.3.18.1289)
"Управление торговым предприятием для Украины", редакция 1.2. (1.2.58.1) (http://1c.ua/v8/RegionalSolutions_UA_UTP.php)
Copyright © Molenari OU, 2017-2020. All rights reserved

Автор: Slon747 24.01.25, 16:31

berest.andriy @ Сегодня, 16:18 * ,
Треба спочатку відбір зробити по вимірюванням:

ОсновнаСпецифікація=РегистрыСведений.ОсновныеСпецификацииНоменклатуры.СоздатьНаборЗаписей();
ОсновнаСпецифікація.Отбор.Период.Установить(текущаядата());
ОсновнаСпецифікація.Отбор.номенклатура.Установить(номенклатура);
новийзапис=основнаспецифікація.Добавить();
новийзапис.период=текущаядата();
новийзапис.номенклатура=номенклатура;
новийзапис.спецификацияноменклатуры=специфікація;
основнаспецифікація.Записать();

Це якщо вимірювання Период та номенклатура.

Автор: berest.andriy 24.01.25, 16:43




має бути ось так

berest.andriy @ Сегодня, 16:41 * ,

Автор: Vofka 24.01.25, 16:59

berest.andriy @ Сегодня, 16:43 * ,
Як вище зазначив Slon747 про всі виміри, додайте ще відбір но Характеристиці:

ОсновнаСпецифікація.Отбор.ХарактеристикаНоменклатуры.Установить(МояХарактеристика);

Автор: berest.andriy 24.01.25, 17:03

Vofka @ Сегодня, 16:59 * ,

а якщо в мене характеристика не заповнена?

Автор: Vofka 24.01.25, 17:09

berest.andriy @ Сегодня, 17:03 * ,
Якщо у вас для якоїсь номенклатури взагалі немає характеристик, то нічо страшного.

Я зараз подумав: а нашо ви то робите через НаборЗаписей? Робіть

ОсновнаСпецифікація = РегистрыСведений.ОсновныеСпецификацииНоменклатуры.СоздатьМенеджерЗаписи();
// ...

Автор: berest.andriy 24.01.25, 17:20

Vofka @ Сегодня, 17:09 * ,

знайшов в неті такий приклад, тому так роблю.
якщо використати СоздатьМенеджерЗаписей то далі код буде той самий чи там щось поміняється?

Автор: xlmel 25.01.25, 10:54

Ви записуєте за замовчуванням з параметром Заміщати = Істина, тому й видаляєте все інше. Виправте останній рядок основнаспеціфікація.Записать(Ложь);

Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7
https://pro1c.org.ua