Объединить документы в 1с в один
Обработка объединяет несколько документов в один, с возможностью пометить на удаление объединяемые документы. Выбрать, какие документы необходимо объединить, можно по периоду либо подбором конкретных документов. Заполнение шапки объединенного документа берется у первого в списке либо у помеченного галкой.
Специальные предложения
Идея действительно новая плюсую, но подойдет только для каких-то специфических внутренних документов. Т.к. каждый номер имеет номер и дату и отражает обычно какую-то реальную хоз операцию.
А сколько таких внутренних документов (как бы отражающих реальные операции взамен реальных) бывает за пределами МКАД. Вы просто не представляете. Спасибо огромное за обработку.
Идея действительно замечательная. Часто бывает необходимо сформировав большое количество документов на комплектацию, списание и т.п. в течение дня или месяца потом объединить их в один большой документ. Поэтому приходится это делать вручную, что приводит к большому числу ошибок. Поэтому ставлю плюс за интересное решение.
Как я понял, объединяются только однотипные документы, скажем, приказ какого-то одного вида? И движения по регистрам перепроводятся из нескольких на этот ОДИН? А учитыватся ли корректировки объединяемых документов? И документы могут объединяться только в пределах одного месяца (учётного периода?
Влепил МИНУС, мог бы так и 10 влепил!
Эй пользователи очнитесь! Это же функция есть в типовых конфах, называется она кнопка "Изменить" Отличие этой только в том что она позволяет загрузить все таб. части вместо одной. Несколько документов она также спокойно обрабатывает.
Зато у той плюс что заполняет по любому документу. А доработать ее до всех таб.частей и несколько документов - ну это не повод писать обработку.
Автор - ты пошел не по правильному пути! Сделай "внешнюю обработу заполнения таб части" - это же класичейкий вариант, и допиши туда свои хотелки (несколько документов и все таб части). Нечего вилосипед изобретать - изучайте лучше типовые механизмы.
PS: Что-то много начали выкладывать обработок по принципу: "сделаю кнопку, фильтр и поле которое по нему заполняется - кто-нибудь да оценит новизну идеи".
Таких идей я могу по 10 штук за час генерировать. Если мало идей своих спросите, вот например как насчет подсистемы наподобии http://infostart.ru/public/59452/ - подсистема "Настройка контроля заполнения объектов в момент записи" только чтобы она позволяла в любой список выводить любые колонки с данными, например не хватает нам колонки с реквизитом который не указан, мы не просим программиста его добавить и не лезем в универсальный журнал, а нажимаем в менюнхе любого списка кнопку "Настройка полей" и отмечаем что нам нужно, а что нет. И программисту не нужно лазить в списки в конфигураторе и их менять, есдинственное при открытии списка прописать вызов к подсистеме, а она все остальное берет на себя.
Или например по такому же принципу подсистему похитрее - добавлять универсальные фильтры на форму любого списка (например по контрагенту, организации) и все динамично без конфигуратора. В АльфаАвто аналогичная написана, но не как подсистема и ее сложно копировать. В типовых это реализовано в отчетах например в УТ - быстрый отбор называется.
Удобство таких подсистем что вносится минимум изменений в типовую и ее легко обновлять, даже бух-ю можно так изменить что будет сказкой, а обновлятся за час.
И таких идей полно.
1С 8.3 Объединение табличных документов (с разной шириной)
// Процедура ПрисоединитьТабличныйДокумент осуществляет вывод Присоединяемого документа под указанным
// С возможностью создания нового формата строк для всей области присоединяемого документа
// Удобно использовать, чтобы колонки различной ширины не разъезжались
//
// Параметры:
// ПриемникТаблДок - ТабличныйДокумент - документ, куда будут добавлены области присоединяемого документа
// ПередатчикТаблДок - ТабличныйДокумент/ОбластьЯчеекТабличногоДокумента - документ, который присоединяем
// СоздатьФорматСтрок - Булево - флаг, указывающий на то, что необходимо создать свой формат строк
//
Процедура ПрисоединитьТабличныйДокумент ( ПриемникТаблДок , Знач ПередатчикТаблДок , Знач СоздатьФорматСтрок = Ложь) Экспорт
ВременныйТаблДок = Новый ТабличныйДокумент ;
ОбластьЯчеек = ВременныйТаблДок . Вывести ( ПередатчикТаблДок );
Если СоздатьФорматСтрок Тогда
ОбластьЯчеек . СоздатьФорматСтрок ();
КонецЕсли;
ПриемникТаблДок . Вывести ( ВременныйТаблДок );
// Добавляет один сформированный табличный документ к другому
//
// Параметры:
// - табличный документ, в который добавляется Табличный документ
// - табличный документ, вставляемый в приемник
Процедура ДобавитьТабличныйДокумент ( ПриемникТаблДок , ПередатчикТаблДок )
Если ПередатчикТаблДок = Неопределено Тогда
Возврат;
КонецЕсли;
НачалоНовогоТД = ПриемникТаблДок . ВысотаТаблицы + 1 ;
//Разобъем вствляемый ТД на куски форматов строк
ФорматыСтрокТЗ = Новый ТаблицаЗначений ;
ФорматыСтрокТЗ . Колонки . Добавить ( "ПерваяСтрока" );
ФорматыСтрокТЗ . Колонки . Добавить ( "ПоследняяСтрока" );
ФорматыСтрокТЗ . Колонки . Добавить ( "МассивЗначенийШирины" );
//Чтобы узнать ширину колонки для каждой ячейки необходимо разъединить все объединенные ячейки
//А, т.к. вставляемый ТД нам не нужно изменять, создадим копию вставляемого ТД
ВременныйТаблДок = ПередатчикТаблДок . ПолучитьОбласть ();
ВременныйТаблДок . Область (). Разъединить ();
//Готовим таблицу, где будет храниться информация обо всех "группах" форматирования строк
ПредыдущаяШиринаСтрокой = "" ;
Для НомерСтроки = 1 По ВременныйТаблДок . ВысотаТаблицы Цикл
МассивЗначенийШирины = Новый Массив ;
Для НомерКолонки = 1 По ВременныйТаблДок . ШиринаТаблицы Цикл
МассивЗначенийШирины . Добавить ( ВременныйТаблДок . Область ( НомерСтроки , НомерКолонки ). ШиринаКолонки );
КонецЦикла;
ШиринаСтрокой = ПолучитьШиринуСтрокой ( МассивЗначенийШирины , ";" );
Если ШиринаСтрокой <> ПредыдущаяШиринаСтрокой Тогда
Если ФорматыСтрокТЗ . Количество ()> 0 Тогда
ФорматыСтрокТЗ [ ФорматыСтрокТЗ . Количество () - 1 ]. ПоследняяСтрока = НомерСтроки - 1 ;
КонецЕсли;
ФорматыСтрокСтрока = ФорматыСтрокТЗ . Добавить ();
ФорматыСтрокСтрока . ПерваяСтрока = НомерСтроки ;
ФорматыСтрокСтрока . МассивЗначенийШирины = МассивЗначенийШирины ;
КонецЦикла;
ФорматыСтрокТЗ [ ФорматыСтрокТЗ . Количество () - 1 ]. ПоследняяСтрока = НомерСтроки - 1 ;
//Теперь вставляем в Приемник вставляемую ТД кусками. Сразу же устанавливаем ширину колонок
Для Каждого СтрокаФорматыТЗ Из ФорматыСтрокТЗ Цикл
ПерваяСтрокаОбласти = НачалоНовогоТД + СтрокаФорматыТЗ . ПерваяСтрока - 1 ;
ПоследняяСтрокаОбласти = НачалоНовогоТД + СтрокаФорматыТЗ . ПоследняяСтрока - 1 ;
КусокВставляемогоТабДок =
ПередатчикТаблДок . ПолучитьОбласть ( СтрокаФорматыТЗ . ПерваяСтрока ,, СтрокаФорматыТЗ . ПоследняяСтрока );
ОбластьИсточник = КусокВставляемогоТабДок . Область ();
ОбластьПриемник = ПриемникТаблДок . Область ( ПерваяСтрокаОбласти , , ПоследняяСтрокаОбласти , );
ПриемникТаблДок . ВставитьОбласть ( ОбластьИсточник , ОбластьПриемник );
ОбластьПриемник . СоздатьФорматСтрок ();
Для Счетчик = 1 По КусокВставляемогоТабДок . ШиринаТаблицы Цикл
ПриемникТаблДок . Область ( ПерваяСтрокаОбласти , Счетчик , ПоследняяСтрокаОбласти , Счетчик ). ШиринаКолонки =
СтрокаФорматыТЗ . МассивЗначенийШирины [ Счетчик - 1 ];
КонецЦикла;
Функция ПолучитьШиринуСтрокой ( перМассив , разделитель = ";" )
Рез = "" ;
Для Каждого Стр Из перМассив Цикл
Рез = Рез + стр + разделитель ;
КонецЦикла;
Возврат Рез ;
КонецФункции
Объединение в запросах 1С 8.3 - это выполнение двух разных запросов и объединение их результатов в один общий.
Требования к объединяемым таблицам это одинаковое количество полей. Если соответствующие друг другу поля в разных таблицах имеют один и тот же тип, то итоговое поле будет тоже иметь этот тип, если же тип разный, то итоговое поле будет иметь составной тип данных. Упорядочивать (группировать, подводить итоги) таблиц имеет смысл только после их объединения в конечный результат.
- ОБЪЕДИНИТЬ - конструкция объединяет два результата и группирует повторяющие строки (дубликаты строк из разных запросов будут удалены).
- ОБЪЕДИНИТЬ ВСЕ - также объединяет два результата, но строки в результате автоматически не группирует (дубликаты строк из разных запросов удалены не будут). Используется для ускорения выполнения запроса, когда заведомо невозможно получения одинаковых строк.
✔ Объединение двух таблиц в одну
&НаСервере
Процедура ОбъединениеДвухТаблицВОдну ()
// Объединение "Контрагенты" и "Классификатор Сроков Полезного Использования"
Запрос = Новый Запрос ( "ВЫБРАТЬ
| Наименование
|ИЗ
| Справочник.Контрагенты
|
|ОБЪЕДИНИТЬ
|
|ВЫБРАТЬ
| Наименование
|ИЗ
| Справочник.КлассификаторСроковПИ" );
РезультатЗапроса = Запрос . Выполнить (); Записи = РезультатЗапроса . Выбрать ();
Пока Записи . Следующий () Цикл
// Обход результата запроса по каждой записи в полученной выборке
КонецЦикла;
&НаСервере
Процедура ОбъединениеБолееДвухТаблицВОдну ()
// Объединение трех таблиц Контрагенты, Материалы и Страны
Запрос = Новый Запрос ( "ВЫБРАТЬ
| Наименование
|ИЗ
| Справочник.Контрагенты
|
|ОБЪЕДИНИТЬ
|
|ВЫБРАТЬ
| Наименование
|ИЗ
| Справочник.Материалы
|
|ОБЪЕДИНИТЬ
|
|ВЫБРАТЬ
| Наименование
|ИЗ
| Справочник.Страны" );
РезультатЗапроса = Запрос . Выполнить (); Записи = РезультатЗапроса . Выбрать ();
Пока Записи . Следующий () Цикл
// Обход результата запроса по каждой записи в полученной выборке
КонецЦикла;
&НаСервере
Процедура СохранениеДубликатовВРезультатеОбъединенияТаблиц ()
// Объединение таблицы "Классификатор Сроков Полезного Использования" саму с собой так,
// чтобы дубликаты, которые получились сами по себе - остались в выборке (задвоились)
Запрос = Новый Запрос ( "ВЫБРАТЬ
| Наименование
|ИЗ
| Справочник.КлассификаторСроковПИ
|
|ОБЪЕДИНИТЬ ВСЕ
|
|ВЫБРАТЬ
| Наименование
|ИЗ
| Справочник.КлассификаторСроковПИ" );
РезультатЗапроса = Запрос . Выполнить (); Записи = РезультатЗапроса . Выбрать ();
Пока Записи . Следующий () Цикл
// Обход результата запроса по каждой записи в полученной выборке
КонецЦикла;
&НаСервере
Процедура ОбъединениеТаблицСРазнымКоличествомПолей ()
// Создание дополнительных (недостающих) полей и заполнение их значениями
Запрос = Новый Запрос ( "ВЫБРАТЬ
| Наименование,
| Вес
|ИЗ
| Справочник.Материалы
|
|ОБЪЕДИНИТЬ
|
|ВЫБРАТЬ
| Наименование,
| 0
|ИЗ
| Справочник.Контрагенты" );
РезультатЗапроса = Запрос . Выполнить (); Записи = РезультатЗапроса . Выбрать ();
Пока Записи . Следующий () Цикл
// Обход результата запроса по каждой записи в полученной выборке
КонецЦикла;
&НаСервере
Процедура УпорядочиваниеПриОбъединенииТаблиц ()
// Упорядочивание таблиц Материалы и КлассификаторСроковПИ по наименованию (алфавиту)
Запрос = Новый Запрос ( "ВЫБРАТЬ
| Наименование
|ИЗ
| Справочник.Материалы
|
|ОБЪЕДИНИТЬ
|
|ВЫБРАТЬ
| Наименование
|ИЗ
| Справочник.КлассификаторСроковПИ
|
|УПОРЯДОЧИТЬ ПО
| Наименование УБЫВ" );
РезультатЗапроса = Запрос . Выполнить (); Записи = РезультатЗапроса . Выбрать ();
Пока Записи . Следующий () Цикл
// Обход результата запроса по каждой записи в полученной выборке
КонецЦикла;
Механизм сравнения и объединения конфигураций 1С 8.3 помогает разработчикам 1С тщательно произвести сравнение конфигураций или их расширений, а также понять правила объединения. Нередко этот режим используют для сопоставления конфигураций и без их объединений. Также он используется в работе сразу несколькими разработчиками, что помогает объединить все доработки.
В конфигурации предусмотрено сопоставление общих свойств объектов 1С 8.3: справочников, документов, журналов, реквизитов и табличных частей 1С. Отдельному сравнению подвергаются формы объектов, такие как:
Напротив каждого объекта, который разработчик должен объединить с аналогичным объектом другой конфигурации нужно установить флажок.
2. Сравнение конфигураций 1С 8.3
Перед началом любых действий с конфигуратором 1C рекомендуется выгрузить информационную базу 1C в файл. В конфигураторе 1C необходимо выбрать меню «Администрирование → Выгрузить информационную базу» (рис.1).
Рис 1. Выгрузка ИБ.
Для запуска механизма объединения в режиме конфигуратора выбираем в меню «Конфигурация → Сравнить, объединить с конфигурацией из файла» (рис.2).
Результат сравнения будет открыт в специальном окне (рис.3), в котором показана структура конфигураций.
В первом столбце табличного поля будут указаны цветовые отметки:
● зеленый цвет – им отмечены те объекты 1С 8.3, у которых настройки объединения отличны от настроек по умолчанию;
● светло-зеленый цвет – им отмечены те объекты, у которых есть отличия настроек от настроек по умолчанию для зависимых объектов.
Во втором столбце табличного поля будут выведены данные основных конфигурации.
В третьем столбце табличного поля будут выведены данные конфигурации выбранной из файла.
Четвертый столбец табличного поля предназначен для указания режима, при котором будет произведено объединение, а также указания порядка зависимых объектов.
Бежевым цветом выделены объекты, существующие только в основной конфигурации, а зеленым – объекты, существующие в конфигурации выбранной из файла.
Рис 3. Специальное окно.
В выпадающем списке фильтра указаны варианты сравнений, с помощью которых мы можем установить режим просмотра изменений:
● показать отличия в конфигурациях;
● показать присутствующие только в основной конфигурации;
● показать присутствующие только в файле;
Изначально установлен фильтр – показать отличия в конфигурациях. Чтобы отобразить измененные объекты, нужно выбрать фильтр – показать измененные. В специальном окне сопоставления нам нужно проанализировать все объекты, которые были изменены. Также предусмотрена настройка сопоставления модулей объектов, в контекстном меню → «Показать различия в модулях» (рис. 4).
Рис 4. Выбор контекстного меню
Рис 5. Модули текущего объекта.
Чтобы отменить сопоставление модулей объекта в контекстном меню выбираем → «Отменить соответствие объектов».
У объектов, участвующих в объединении, предусмотрена возможность выбора режима объединения (рис.6):
● взять из файла – если объект отсутствует в основной конфигурации, то он появится в ней, а если в нем происходили изменения, то он будет взят из файла.
●объединить с приоритетом – будет выбран приоритет загружаемой конфигурации и произведено объединение объектов согласно приоритету конфигурации, т.е. будут внесены все новые изменения и сохранены все старые.
Рис 6. Выбор режима.
Рис 7. Приоритет осн. конф.
Рис 8. Приоритет конф. из файла
3. Анализ сходств и различий
Для удобства анализа сходств и различий объектов можно вывести:
● отчет о сравнении метаданных 1С (рис. 9.1, 9.2);
● показать различия в макетах (рис. 10).
Рис.9.1 Вывод отчета.
Рис.9.2 Вывод отчета.
Рис. 10. Различие в макетах.
4. Правила объединения
После всех произведенных настроек конфигурации по кнопке «Выполнить» механизм объединения будет завершен, если не обнаружено никаких противоречий и конфликтов. В ином случае все неразрешимые ссылки отобразятся в специальном окне (рис.11).
Рис 11. Неразрешимые ссылки.
В текущем окне можно включить данные объекты 1С 8.3 в состав объединения или пропустить их:
● пометить все для объединения – позволяет добавить в объединение все выведенные объекты;
● продолжить – объединение происходит без выведенных объектов.
По завершению процедуры объединения необходимо обновить информационную базу 1С.
Специалист компании «Кодерлайн»
Вас могут заинтересовать следующие статьи:
Приветствую, коллеги! В данной статье описываются возможности нового функционала 1С:ERP 2.5 в части организации учета внеоборотных активов, а именно – функционала по объединению основных средств в одно.
1. Новые возможности системы в ЕРП 2.5
На сегодняшний день фирма 1С среди своих партнеров уже объявила о планах дальнейшего развития конфигурации 1С:ERP. В числе прочего известно, что поддержка текущей редакции 2.4 будет осуществляться до конца 1 квартала 2022 года. Планируется только поддерживать изменения законодательства, но не развитие функционала. Далее предприятиям необходимо будет перейти на 1С ЕРП 2.5, чтобы продолжать получать поддержку и обновления своей системы. Однако переход можно выполнить и раньше – вендор заявляет, что 1C:ERP 2.5 уже можно использовать для реальной работы и рекомендует выбирать её для новых внедрений.
В связи с этим, компания «Кодерлайн» выпустит цикл статей по новой редакции, чтобы ознакомить пользователей с новыми возможностями системы. В данной статье мы рассмотрим новый функционал по слиянию двух и более объектов основных средств.
2. Объединение ОС
В 1С ЕРП 2.5 добавлен новый документ «Объединение ОС», с помощью которого можно отразить два варианта слияния основных средств:
· Объединение в новое ОС – несколько исходных объектов ОС объединяются в совершенно новый объект, который сразу же принимается к учету;
· Присоединение к существующему ОС – одно или несколько основных средств присоединяются к ОС, которое уже принято к учету.
Особенности работы нового документа:
· присоединяемые основные средства всегда снимаются с учета;
· по ОС, которые объединяются/присоединяются, не должно быть документов «Принятие к учету ОС» и «Модернизация ОС» в месяце, в котором выполняется объединение;
· нельзя объединять основные средства, полученные или переданные в аренду или полученные в лизинг;
· направления деятельности исходных ОС должны совпадать, либо должны быть пустыми;
· нельзя объединять основные средства, по которым начисляется износ по ЕНАОФ.
Документ можно создать в разделе ERP 2.5 «Внеоборотные активы» в журнале документов «Документы по основным средствам».
3. Объединение в новое ОС в 1С:ERP 2.5
При выборе этой операции на первой закладке документа необходимо выбрать новое ОС, которое будет принято к учету, а также указать для него подразделение, материально-ответственное лицо и адрес нахождения:
Рис. 1 Выбор нового ОС 1С ERP 2.5
При этом исходные основные средства должны учитываться в том же подразделении, что и результирующее ОС.
На закладке «Объединяемые основные средства» вводится список исходных объектов, которые будут слиты в результирующее ОС:
Рис. 2 ОС для слияния в 1С ERP 2.5
Для настройки параметров учета нового объекта могут использоваться указанные в документе параметры, либо же будут взяты параметры первого ОС из списка объединяемых объектов. Это определяется флажком «Объединение однотипных ОС» на первой закладке документа:
Рис. 3 Объединение однотипных ОС в 1С ERP 2.5
Если флажок НЕ стоит, тогда при настройке параметров учета необходимо указать все параметры для учета нового ОС в бухгалтерском, налоговом и управленческом учете:
Рис. 4 Настройка параметров учета в 1С ERP 2.5
Также потребуется задать правила для начисления амортизации ОС – статью и аналитику расходов:
Рис. 5 Начисление амортизации ОС в 1С ERP 2.5
Если же флажок установлен, то:
· для объединения можно выбрать только ОС с совпадающими параметрами: группа ОС, амортизационная группа, СПИ, направление деятельности, налогообложение;
· параметры учета нового ОС будут совпадать с параметрами учета первого объединяемого ОС, как и правила начисления амортизации;
· для нового ОС необходимо будет указать только остаточный срок использования:
Рис. 6 Параметры учета нового ОС в 1С ERP 2.5
При проведении документ формирует проводки по переносу стоимости исходных ОС на новый объект (по счету 01), а также накопленной амортизации (по счету 02):
Рис. 7 Проводки регламентированного учета в 1С ERP 2.5
4. Присоединение основных средств
Операция присоединения основных средств к уже принятому к учету ОС всегда выполняется только для однотипных ОС. В этом случае в документе необходимо заполнить только первую и вторую закладки:
Рис. 8 Заполнение закладок при присоединении основных средств в 1С ERP 2.5
На первой закладке указывается принятое к учету ОС, на второй – список присоединяемых объектов:
Рис. 9 Список присоединяемых ОС в 1С ERP 2.5
При этом после указания ОС на первой закладке, либо после выбора первого присоединяемого ОС, выбор остальных ОС будет ограничен однотипными основными средствами.
По кнопке «Показать параметры учета» система отобразит параметры ОС в списке:
Рис. 10 Показать параметры учета в 1С ERP 2.5
При проведении документ формирует проводки по переносу стоимости и накопленной амортизации с присоединяемых ОС на текущее:
Рис. 11 Проводки по переносу стоимости ОС в 1С ERP 2.5
В данной статье мы рассмотрели уже реализованные в новой редакции системы ЕРП 2.5 возможности. Однако это далеко не все новшества в части учета основных средств. Нужно отметить, что в этот раздел учета добавлено достаточно много совершенно нового функционала. Поэтому мы рекомендуем нашим клиентам при новых внедрениях использовать 1С:ERP 2.5 со всеми её нововведениями. А если Вы уже работаете с 1С:ERP редакции 2.4, то рекомендуем запланировать переход на новую редакцию.
Специалисты компании «Кодерлайн» всегда следят за развитием функционала программ 1С и стараются быть в курсе всех новшеств, чтобы предоставлять нашим клиентам наиболее качественные услуги в части внедрения и поддержки их систем. Мы готовы оказать нашим клиентам квалифицированную помощь при внедрении или же переходе на новую редакцию.
Специалист компании «Кодерлайн»
Вас могут заинтересовать следующие статьи:
94 [PROP_CODE] => TAGS2 [TITLE] => Вас могут заинтересовать следующие семинары: ) --> 95 [PROP_CODE] => TAGS [TITLE] => Вас могут заинтересовать следующие вебинары: ) -->
Вас могут заинтересовать следующие вебинары:
Читайте также: