|
Единицы измерения в табличной части, групповая обработка | ☑ | ||
---|---|---|---|---|
0
Medogon
31.07.12
✎
16:58
|
Добрый вечер все.
Ситуация следующая, портировалась база с 7.7 на 8.2. После конвертации выяснилось, что поля единицы измерения как в свойствах номенклатуры, так и в табличной части реализаций пусты. С помощью групповой обработки я заполнил поля Единица Измерения в номенклатуре. Теперь, чтобы провести документ, мне необходимо руками выполнить даблклик по соответствующему полю в табличной части, выбрать из выпадающего меню единственный вариант и собственно нажать провести документ. Внимание вопрос! Каким образом я могу автоматизировать процесс, документов более 3000, вручную как понимаете, выполнить все это будет нерационально по времени. Я знаком с обработкой УниверсальныеПодборИОбработкаОбъектов, предполагаю, что сие можно выполнить с помощью пункта Произвольный алгоритм, нужен скрипт. 1с 8.2.15.301 На самом деле задание несложное, но ввиду недостатка необходимых знаний, что называется залип. Помогите новичку :0 Спасибо |
|||
1
DrShad
31.07.12
✎
17:01
|
а ты как их вообще заполнял если не можешь произвольный алгоритм написать?
|
|||
2
palpetrovich
31.07.12
✎
17:13
|
а использовать в УниверсальныеПодборИОбработкаОбъектов галку "обрабатывать табличные части" - не судьба?
|
|||
3
palpetrovich
31.07.12
✎
17:17
|
+2 а не, отставить, Единицы-ж небось подчинены Номенклатуре - так не прокатит
|
|||
4
palpetrovich
31.07.12
✎
17:22
|
+3 хотя, если это бухгалтерия, то может и не подчинены, так что может прокатит
ты уж огласи что там у тебя ...а вообще - написать обработку по заполнению - понты :) |
|||
5
France
31.07.12
✎
17:28
|
да стырить из модуля справочника номенклатура..
вот для обработки "Универсальный подбор и обработка...". Использовал для установки цен номенклатуры делаешь отбор по нужному документу (или что там у тебя), и в произвольный алгоритм: для каждого строка из объект.Товары цикл товар = строка.Номенклатура.ПолучитьОбъект(); ВыборкаЕдиниц = Справочники.ЕдиницыИзмерения.Выбрать(, товар.Ссылка); Если ВыборкаЕдиниц.Следующий() Тогда НайденнаяЕдиница = ВыборкаЕдиниц.Ссылка; Иначе НайденнаяЕдиницаОбъект = Справочники.ЕдиницыИзмерения.СоздатьЭлемент(); НайденнаяЕдиницаОбъект.Наименование = СокрЛП(Объект.БазоваяЕдиницаИзмерения); НайденнаяЕдиницаОбъект.ЕдиницаПоКлассификатору = Объект.БазоваяЕдиницаИзмерения; НайденнаяЕдиницаОбъект.Коэффициент = 1; НайденнаяЕдиницаОбъект.Владелец = Объект.товар.Ссылка; Попытка НайденнаяЕдиницаОбъект.Записать(); Исключение Сообщить("Не удалось записать единицу хранения остатков: " + ОписаниеОшибки(), СтатусСообщения.Важное); Отказ = Истина; КонецПопытки; НайденнаяЕдиница = НайденнаяЕдиницаОбъект.Ссылка; КонецЕсли; Товар.ЕдиницаХраненияОстатков = НайденнаяЕдиница; Товар.Записать(); строка.ЕдиницаИзмерения = Строка.Номенклатура.ЕдиницаХраненияОстатков; КонецЦикла; Объект.Записать(); |
|||
6
Medogon
01.08.12
✎
08:17
|
Как заполнял? Кровью и потом, а также на коллективной воле всех окружающих :)
France, спасибо!! Все работает идеально, все необходимые поля заполнены! Где на этом форуме можно тыкнуть "спасибо"? :) |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |