Корректировка движения документа по произвольному алгоритму


Обработка создавалась изначально как средство групповой корректировки документов не содержащих табличных частей (корр. записей регистров, операция, перенос данных) где нельзя использовать универсальную обработку "Групповая обработка справочников и документов".

После выбора документа определяется регистры по которым сделал движение этот регистратор, они появляются в списке выбора. Выбираем регистр для корректировки — его движения попадают в табличную часть (кнопка «Получить результат»). Можно использовать отбор по реквизитам регистра (правой кнопкой мыши на форме «отбор» — добавить). Далее с помощью произвольного алгоритма обрабатываем полученные строки (чтобы обратиться к строке используем конструкцию «Строка.»), либо изменяем их вручную в табличной части. (та же кнопка «Получить результат»). После получения требуемого результата-  сохраняем(«Записать изменения»).

В случае если данных функционал вам не подойдет на сайте есть похожие публикации

//infostart.ru/public/103021/ и //infostart.ru/public/119385/ используйте их.

10 Comments

  1. tireal

    Обработка создавалась изначально как средство групповой корректировки документов не содержащих табличных частей (корр. записей регистров, операция, перенос данных) где нельзя использовать универсальную обработку «Групповая обработка справочников и документов».

    Перейти к публикации

    Reply
  2. Misanets

    Интересный подход, проверим, пока плюс авансом.

    Reply
  3. Misanets

    В описании очепятка «иначально»

    Reply
  4. tireal

    (2) Misanets,

    Спасибо, исправил

    Reply
  5. cssprite

    Понравилось, просто и изящно. +

    Недостаток: не очищается список регистров при перевыборе документа, при обработке нескольких документов подряд, он просто растет и может содержать как дубликаты, так и регистры, по которым для вновь выбранного движения не предусмотрены.

    Reply
  6. tireal

    Спасибо, исправлю

    Reply
  7. FlexL

    интересная обработка…. посмотрим …

    Reply
  8. FlexL

    посмотрел, на БГУ исправление документа «Операция (бухгалтерская) » выдает ошибку :

    //{Форма.Форма.Форма(7)}: Поле объекта не обнаружено (Ответственный)

    Объект.Ответственный = ГлЗначениеПеременной(«глТекущийПользователь»);

    из пожеланию .. хорошо бы если можно было изменять реквизиты, как в «групповой обработке справочников и документов» типовой 1с.

    т.е. выбрал поле ( счетДт = «101» ) указал значение и он по выбранным операциям переправил бы все значения.

    Reply
  9. tireal

    как вы уже наверное поняли, в документе Операция (бухгалтерская) отсутствует реквизит Ответственный. Хотя странно реквизит как бы популярный.

    по поводу изменения реквизитов то никто же не запретит сначала найти этот объект (СчетДт = ПланСчетов.Хозрасчетный.НайтиПоКоду(«101»)) и тут же его вставить Строка.СчетДт = СчетДт, код не проверял ) но думаю сработает.

    Если не изменяет память то ресурсе видел обработку более «заточенную» под ваше пожелание, поищите. Моя пригодится для так скажем несколько сложных задач, продолжая ваш пример — для заполнения счета по какому то условию, т.е. один счет на одно условие другой на другое, и требует конечно элементарных знаний языка.

    Reply
  10. liz_e

    Хорошая обработка, спасибо

    Reply

Leave a Comment

Ваш адрес email не будет опубликован. Обязательные поля помечены *