Имя: Пароль:
1C
1С v8
КА2. Ключи аналитики по-прежнему текстовые? ТиИ есть?
0 Кодер
 
24.05.19
11:57
Поменяли одну букву в наименовании материала, исправлю - поплывёт себестоимость?

Встроенного тестирования и исправления ключей аналитики не нашёл. Есть платное на ИС. Других вариантов нет?
1 shuhard
 
24.05.19
12:12
(0) аналитики всегда были ссылкой
не поплывёт
инструмент встроен в список ключей аналитики учета номенклатуры  - Ещё - заменить дубли
2 Кодер
 
24.05.19
12:29
(1) Спасибо!
Мне кажется, что не всегда. На УПП 1.3 в районе 40-50 релиза наличие одинаковых наименований разной номенклатуры сильно мешало закрытию.
3 shuhard
 
24.05.19
13:41
(2)  попиз.дить зашёл ?
4 Mikhail Volkov
 
24.05.19
14:07
(2) Для такой номенклатуры включай в наименование аналитики учета номенклатуры артикул или код номенклатуры. Вообще наименование аналитики учета номенклатуры всего 100, когда наименование номенклатуры длинное, то остальные параметры в наименование не входят. В своей КА прописал:

// Возвращает Истина, если у номенклатуры единственное наименование
//
Функция ЕдинственноеНаименованиеНоменклатуры(Номенклатура) Экспорт
    Запрос = Новый Запрос;
    Запрос.Текст = "
    |ВЫБРАТЬ
    |    Номенклатура.Ссылка КАК Ссылка
    |ИЗ
    |    Справочник.Номенклатура КАК Номенклатура
    |ГДЕ
    |    Номенклатура.Наименование = &Наименование";
    Запрос.УстановитьПараметр("Наименование", Номенклатура.Наименование);
    Выборка = Запрос.Выполнить().Выбрать();
    Счетчик = 0;
    Пока Выборка.Следующий() Цикл
        Если Счетчик > 0 Тогда
            Возврат Ложь;
        КонецЕсли;
        Счетчик = Счетчик + 1;
    КонецЦикла;
    Возврат Истина;
КонецФункции

// Возвращает сокращенное наименование склада
//
Функция СокрНаименованиеСклада(НаименованиеСклада) Экспорт
    Лишнее = "(ИП Патрушева Г.М.)";
    Возврат ?(Найти(НаименованиеСклада, Лишнее) = 0, НаименованиеСклада, СокрЛП(Лев(НаименованиеСклада, Найти(НаименованиеСклада, Лишнее) - 1)));
КонецФункции

// Возвращает полное наименование ключа аналитики номенклатуры
// без дублей по наименованию
Функция ПолучитьПолноеНаименованиеКлючаАналитикиНоменклатуры(МенеджерЗаписи) Экспорт
    Попытка
        НаименованиеСклада = СокрЛП(МенеджерЗаписи.МестоХранения);
    Исключение
        НаименованиеСклада = СокрЛП(МенеджерЗаписи.Склад);
    КонецПопытки;
    Наименование = СокрЛП(МенеджерЗаписи.Номенклатура) + ?(ЕдинственноеНаименованиеНоменклатуры(МенеджерЗаписи.Номенклатура), "", ", "
        + ?(ПустаяСтрока(МенеджерЗаписи.Номенклатура.Артикул), СокрЛП(МенеджерЗаписи.Номенклатура.Код), СокрЛП(МенеджерЗаписи.Номенклатура.Артикул))) + "; "
        + ?(ЗначениеЗаполнено(МенеджерЗаписи.Характеристика), СокрЛП(МенеджерЗаписи.Характеристика) + "; ", "")
        + ?(ЗначениеЗаполнено(МенеджерЗаписи.Серия), СокрЛП(МенеджерЗаписи.Серия) + "; ", "")
        + ?(ЗначениеЗаполнено(МенеджерЗаписи.Назначение), СокрЛП(МенеджерЗаписи.Назначение) + "; ", "")
        + ?(ЗначениеЗаполнено(МенеджерЗаписи.СтатьяКалькуляции), СокрЛП(МенеджерЗаписи.СтатьяКалькуляции) + "; ", "")
        + СокрНаименованиеСклада(НаименованиеСклада);
    Если СтрДлина(Наименование) > 100 Тогда
        Наименование = Лев(СокрЛП(МенеджерЗаписи.Номенклатура), СтрДлина(СокрЛП(МенеджерЗаписи.Номенклатура)) - СтрДлина(Наименование) + 97) + "..."
            + ?(ЕдинственноеНаименованиеНоменклатуры(МенеджерЗаписи.Номенклатура), "", ", "
            + ?(ПустаяСтрока(МенеджерЗаписи.Номенклатура.Артикул), СокрЛП(МенеджерЗаписи.Номенклатура.Код), СокрЛП(МенеджерЗаписи.Номенклатура.Артикул))) + "; "
            + ?(ЗначениеЗаполнено(МенеджерЗаписи.Характеристика), СокрЛП(МенеджерЗаписи.Характеристика) + "; ", "")
            + ?(ЗначениеЗаполнено(МенеджерЗаписи.Серия), СокрЛП(МенеджерЗаписи.Серия) + "; ", "")
            + ?(ЗначениеЗаполнено(МенеджерЗаписи.Назначение), СокрЛП(МенеджерЗаписи.Назначение) + "; ", "")
            + ?(ЗначениеЗаполнено(МенеджерЗаписи.СтатьяКалькуляции), СокрЛП(МенеджерЗаписи.СтатьяКалькуляции) + "; ", "")
            + СокрНаименованиеСклада(НаименованиеСклада);
    КонецЕсли;
    Возврат Наименование;
КонецФункции

Только не понял: иногда в наименование аналитики учета номенклатуры встречается слово "(Брак)" - откуда оно?
Программист всегда исправляет последнюю ошибку.