Корректировка в табличной части единицы измерения для номенклатуры (Метаданные)

28.09.10

Задачи пользователя - Адаптация типовых решений

Из-за некорректного переноса документов из УТП в БУ во всех документах оказалось не заполнена единица измерения номенклатуры, а документов в базе очень много... Встал вопрос как исправить руками или обработка?...

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
ОбходПоДокументам.epf
.epf 6,79Kb
45
45 Скачать (1 SM) Купить за 1 850 руб.

В результате за 30 мин. была написана обработка которая на основе метаданных обходит все документы в базе находит те которые содержат ключевую пару "номенклатура" и "ЕдиницаИзмерения" в табличной части и исправляет запись реквизита.

Это моя первая публикация. Работаю с метаданными по 8.1 в первый раз...
Поэтому если сильно криво, просьба не ругать, а оценить как есть...
Спасибо за поддержку и понимание.


Процедура КнопкаВыполнитьНажатие(Кнопка)
   
КоличествоДокументов = Метаданные.Документы.Количество() - 1;
   
ЭлементыФормы.Надпись2.Заголовок = КоличествоДокументов;
   
ЭлементыФормы.Индикатор.МинимальноеЗначение = 0;
   
ЭлементыФормы.Индикатор.МаксимальноеЗначение = КоличествоДокументов;
    Для
НомерТипаДокумента = 0 По КоличествоДокументов Цикл
       
ЭлементыФормы.Индикатор.Значение = НомерТипаДокумента;
       
Документ = Метаданные.Документы.Получить(НомерТипаДокумента);
       
КолТабЧастей = Документ.ТабличныеЧасти.Количество();
        Для
НомерТабЧасти=0 По КолТабЧастей-1 Цикл
           
ТабличнаяЧасть = Документ.ТабличныеЧасти[НомерТабЧасти];
           
КолРекТабЧасти = ТабличнаяЧасть.Реквизиты.Количество();
           
ДокументСодержитИскомыеПоля = 0;
            Для
НомерРекТабЧасти=0 По КолРекТабЧасти-1 Цикл
               
Реквизит = ТабличнаяЧасть.Реквизиты[НомерРекТабЧасти].Имя;
                Если (
Реквизит="Номенклатура") или (Реквизит="ЕдиницаИзмерения") Тогда
                   
ДокументСодержитИскомыеПоля = ДокументСодержитИскомыеПоля + 1;
                КонецЕсли;
            КонецЦикла;
            Если
ДокументСодержитИскомыеПоля > 1 Тогда
               
Имя = Документ.Имя;
               
ВыборкаДок = Документы[Имя].Выбрать();
                Пока
ВыборкаДок.Следующий() Цикл
                   
ЭлементыФормы.НадписьДокумент.Заголовок = "Текущий документ: "+ВыборкаДок.ПолучитьОбъект();
                   
ЭлементыФормы.ТекстовыйДокумент.ДобавитьСтроку(ВыборкаДок.ПолучитьОбъект());
                   
Объект = ВыборкаДок.ПолучитьОбъект();
                    Для каждого
ТекСтрока Из Объект[ТабличнаяЧасть.Имя] Цикл
                       
ТекСтрока.ЕдиницаИзмерения=ТекСтрока.Номенклатура.БазоваяЕдиницаИзмерения;
                    КонецЦикла;
                   
Объект.Записать(РежимЗаписиДокумента.Запись);
                КонецЦикла;
            КонецЕсли;
        КонецЦикла;
    КонецЦикла;
КонецПроцедуры

См. также

Корректировка данных Зарплата Бухгалтер Платформа 1С v8.3 Сложные периодические расчеты 1С:Зарплата и кадры бюджетного учреждения 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет НДФЛ Платные (руб)

Обработка исправляет технические ошибки по НДФЛ, взаиморасчетам с сотрудниками в 1С:ЗУП (1С:ЗКГУ) на начало года. Фактически все ошибки, которые проявляются в ведомостях на выплату, расчетных листках, при заполнении ведомостей на выплату и отчетах 6-НДФЛ и т.д. нужно начинать исправлять с начала расчетного года. Это позволит быть уверенными, что после завершения расчетов предыдущего года, начали работать с «чистого листа» без ошибочных остатков.

60000 руб.

06.10.2023    5053    38    20    

46

Адаптация типовых решений Платформа 1С v8.3 1С:Документооборот Россия Платные (руб)

Расширение конфигурации для «1С:Документооборот КОРП», редакция 3.0. позволяет: 1.использовать произвольные табличные части в качестве дополнительных реквизитов к документу; 2 использовать произвольные табличные части в шаблонах в формате docx для автоматического заполнения таблиц.

29400 руб.

29.06.2023    7099    19    13    

28

Закрытие периода Инструменты администратора БД Корректировка данных Бухгалтер Пользователь Бухгалтерский учет 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Расширение «Оперативное проведение» в 4 раза уменьшает время проведения документов и закрытия месяца. Является комплексным решением проблем 62 и 60 счетов. Оптимизирует проведение при включенной функциональной опции «Раздельный учет НДС». Используется в более 10 организациях уже 2 года. Совместимо с конфигурацией Бухгалтерия 3.0 (+КОРП).

14400 руб.

29.04.2020    34496    109    152    

75

Корректировка данных Системный администратор Программист Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Платные (руб)

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

3600 руб.

10.02.2017    111986    674    175    

713

Печатные формы Адаптация типовых решений Бухгалтер Пользователь Платформа 1С v8.3 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 3.0 1С:Розница 3.0 Платные (руб)

Расширение позволяет вывести в табличном документе факсимиле печати и подписей и/или вывести произвольную картинку из прикреплённых файлов организации для 1С УТ 11.5, КА 2.5, ERP 2.5, УНФ 3, Розница 3. Вывод факсимиле возможен в табличные документы УПД, УКД, Счёт-фактура, ТОРГ-12 и другие. Возможно настроить вывод для любых типовых макетов (Акт сверки, М-15, ТТН), для этого потребуется отредактировать макет и разместить на нём картинки с установленными именами. Редактирование осуществляется через типовой механизм в пользовательском интерфейсе.

3500 руб.

07.02.2023    7833    84    17    

42

Логистика, склад и ТМЦ Адаптация типовых решений Пользователь Платформа 1С v8.3 1С:Управление нашей фирмой 1.6 1С:Управление нашей фирмой 3.0 Россия Управленческий учет Платные (руб)

Чтобы не допустить путаницы с обещаниями клиентам и для четкого контроля исполнения заказов мы используем резервирование товаров. Мы доработали УНФ, чтобы она автоматически отменяла старые резервы и не мешала эффективно продавать.

7200 руб.

02.08.2023    4953    19    1    

36

Корректировка данных Бухгалтер Платформа 1С v8.3 Бухгалтерский учет 1С:Бухгалтерия 3.0 Бухгалтерский учет Налоговый учет Налог на прибыль Платные (руб)

Обработка служит для: выравнивания бухгалтерского и налогового учета на определенную дату по выбранным счетам; закрытия остатков по выбранным счетам; обнуления налогового учета (ПР, ВР также будут обнулены)

2880 руб.

05.05.2024    785    12    0    

8
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Abadonna 3970 28.09.10 13:22 Сейчас в теме
>Если (Реквизит="Номенклатура") или (Реквизит="ЕдиницаИзмерения") Тогда
Хм.. А вдруг (хотя и вряд ли) реквизит другой идентификатор имеет?
Уж лучше на тип реквизита проверять, имхо
Andry.Boris; +1 Ответить
2. Andry.Boris 59 28.09.10 14:08 Сейчас в теме
Обработка на стандартную конфигурация.
В стандартной реквизиты называются именно так...
Проверять на тип смысла нет... суть одна и та же...
Как по мне...
Реквизит носит название справочника...
Если поменять на проверку типа....то нужно дописать пару строк...
на получение типа... Если нужно...
3. IG 20.07.13 05:51 Сейчас в теме
в КА не проставляет единицы, а наоборот удаляет
ТекСтрока.ЕдиницаИзмерения=ТекСтрока.Номенклатура.БазоваяЕдиницаИзмерения; - не заменяет пустое значение
Оставьте свое сообщение