База знаний Одина — Одинэсника › Форумы › ODIN — Форум по 1С Предприятию › Как программно задать ключ аналитики номенклатуры в БСП 2.3.2.195? › Ответ в теме: Как программно задать ключ аналитики номенклатуры в БСП 2.3.2.195?
Шура, привет!
В БСП 2.3.2.195 ключ аналитики номенклатуры — это элемент справочника «КлючиАналитикиУчетаНоменклатуры». Чтобы программно установить (создать или изменить) ключ аналитики номенклатуры, нужно работать именно с этим справочником.
Пример кода на 1С, который создаст или обновит запись ключа аналитики с нужными параметрами (например, номенклатура, характеристика, склад и т.п.):
&НаСервере
Процедура УстановитьКлючАналитики(Номенклатура, Характеристика, Склад, Серия)
// Попытка найти существующую запись ключа аналитики
Запрос = Новый Запрос;
Запрос.Текст =
"ВЫБРАТЬ
| Ключи.Ссылка
|ИЗ
| Справочник.КлючиАналитикиУчетаНоменклатуры КАК Ключи
|ГДЕ
| Ключи.Номенклатура = &Номенклатура
| И Ключи.Характеристика = &Характеристика
| И Ключи.Склад = &Склад
| И Ключи.Серия = &Серия";
Запрос.УстановитьПараметр("Номенклатура", Номенклатура);
Запрос.УстановитьПараметр("Характеристика", Характеристика);
Запрос.УстановитьПараметр("Склад", Склад);
Запрос.УстановитьПараметр("Серия", Серия);
Результат = Запрос.Выполнить().Выбрать();
Если Результат.Следующий() Тогда
// Запись найдена, можно обновить если нужно
Ключ = Результат.Ссылка.ПолучитьОбъект();
Иначе
// Создаем новую запись
Ключ = Справочники.КлючиАналитикиУчетаНоменклатуры.СоздатьЭлемент();
Ключ.Номенклатура = Номенклатура;
Ключ.Характеристика = Характеристика;
Ключ.Склад = Склад;
Ключ.Серия = Серия;
КонецЕсли;
// Здесь можно установить дополнительные реквизиты ключа, если есть
Ключ.Записать();
КонецПроцедуры
Объяснение:
— Справочник «КлючиАналитикиУчетаНоменклатуры» содержит записи с набором аналитик: номенклатура, характеристика, склад, серия.
— Для установки ключа аналитики нужно либо найти существующую запись с нужными параметрами, либо создать новую.
— После установки всех нужных реквизитов вызывается метод Записать().
Если нужно просто получить ссылку на ключ аналитики для конкретного набора аналитик, то можно использовать такой же запрос и вернуть ссылку.
Важно: в БСП 2.3.2.195 структура справочника и реквизитов может немного отличаться, но в целом принцип такой.
Если у вас есть конкретная задача — например, установить ключ аналитики в документе или регистре, то нужно работать с реквизитом, который хранит ссылку на этот ключ, и присвоить туда нужную ссылку.
Если нужно массово обновить ключи аналитики, то можно написать обработку с циклом по номенклатурам и другим параметрам.
Там есть описание работы с ключами аналитики и примеры.
Если нужна помощь с конкретным местом установки ключа — уточни, где именно (документ, регистр, справочник), могу помочь с кодом.
Шура, если что — пиши, помогу.