![]() |
Сделать изменения, так чтобы после легко обновить конфигурацию У меня есть документ (путевой лист), который делает списание материалов (факт.расход ГСМ). Сейчас документ делает списание материалов самостоятельно (расчитываю стоимость, делаю проводки). Возникла идея, чтобы документ при проведении создавал документ "Требование-накладная". Может это конечно и удаление аппендицита через "одно место"... Думаю над этой схемой вот еще почему, когда буду собирать задания выполненные по путевкам (чтобы выставить счета заказчикам) мне нужно будет как-то провести опять же это все. А если это будет какой-то новый документ, который при проведении будет создавать "Реализация товаров и услуг" (+с/ф)... В результате получилась бы конфигурация, которая дополняет ее новыми функциями, однако операции в части БУ и НУ сама не делает, а перепоручает это все "родным" документам конфигурации. У кого какие мысли? Кто что делал по такой схеме или где можно посмотреть? Ну или аргументы-отговорки. |
да нормально, только предусмотреть надо если юзеры будут эти породжённые документы править |
2- согласен, вроде в подписках на события можно это сделать. |
В части организации взаимодействия подсмотреть можно в организации связки документа и подчиненной ему СчФ. [quote=twiny;24421458]В результате получилась бы конфигурация, которая дополняет ее новыми функциями, однако операции в части БУ и НУ сама не делает, а перепоручает это все "родным" документам конфигурации.[/quote] Это здравый подход. ИМХО. Создавать документы при проведении моветон. Обработка, формирующая пакет документов (твои, для собственных учётных механизмов + "родные" и организующая их связку). PS На каждую поездку делать требование накладную мне лично кажется излишним. Накапливать данные о фактическом расходе ГСМ [u]количестве[/u] на своём учётном регистре, а требования-накладные регламентно в конце месяца на основе накопленных данных. (ИМХО) |
4 - - создавать документы моветон, ну почему ж? - про излишество требования на каждую путевку - согласен, подумаю на досуге про учетный регистр, спасибо. |
(5) найдите 10 отличий: [quote=roma n;24421871]Создавать документы при проведении моветон.[/quote] [quote=twiny;24421987]создавать документы моветон[/quote] |
6 - уточняю: "Подчиненный" документ буду создавать при записи, проводить при проведении, отменять проведение при отмене проведения. Так правильнее? Ну или действительно, промежуточную обработку (как говорит 4), которая будет создавать пару документов: родной и собственный. имхо оба варианта имеют право на жизнь. |
добавлял в ут Путевые листы, + ввод на основание требовательной накладной, далее выгрузка в БП . Все гуд, ничего сложного. |
[quote=Руки проч от сотки;24425150] добавлял в ут Путевые листы, + ввод на основание требовательной накладной, далее выгрузка в БП . Все гуд, ничего сложного. [/quote] добавлю что сам док путевой лист у меня ниче не двигал, все проводки через требовательную накладную. |
9 - тоже вариант Может кто встречал подобные по реализации отраслевые решения (не обязательно автотранспорта), которые прикручиваются к стандартным конфигурациям. |
[quote=twiny;24425299] 9 - тоже вариант Может кто встречал подобные по реализации отраслевые решения (не обязательно автотранспорта), которые прикручиваются к стандартным конфигурациям. [/quote] могу поделиться тем, что делал я |
при обновление, достаточно будет снимать две галки с док .путевыелисты и док.требовательная накладная- из.за блока ввода на основании |
12 - спасибо, но подобные вещи уже писал. Тут не совсем устраивает, что нужно снимать галочку с требования при обновлении. Поэтому хотел бы видеть решение, которые было бы лишено подобного минуса. |
делай свой общий модуль и подписку на события, там создавай документы. или бизнес-процесс. и с фига ли создание документов при проведении моветон? |
Кстати, прикручивать новый функционал к подпискам, чтобы обновление их не затрагивало, рекомендует Андрей Габец. |
Да, а зачем новый документ создавать? пиши сразу в регистр, да и все. В восьмерке же в регистр можно когда угодно записи делать, хоть вручную. Еще регламентное задание можно использовать. |
за (16) - веником по роже за (15) - нормально, но когда нового функционала много, начнутся напряги за (14) - еще раз веником |
(17) бугого. ты от фонаря ответы пишешь? в (15) и (14) одно и то же написано |
16- в регистры то писать можно, но хотелось бы не задумываться о закрытии аванса, контроля остатков и прочими вопросами, которые уже реализованы в стандартных документах. |
(19) все в твоих руках |
20 спс! а решения по вашей схеме где-нить можно посмотреть? |
Сам я это почерпнул это на курсах в УЦ№3. По бизнес-процессам можно почитать в недавней книжке "Решение специальных прикладных задач в "1с:предприятии 8.2" |
Вообще ничего сложного нет. Идешь в "Общие-Подписки на события", создаешь новую подписку "ОбработкаПроведения" и там указываешь процедуру из общего модуля. |
вот сделал примерчик, выжимку из рабочего кода: &НаСервере Процедура НекийДокументОбработкаПроведения(Источник, Отказ, РежимПроведения) Экспорт //существующие получаем подчиненные документы Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ | ПодчиненныйДокумент.Ссылка, | ПодчиненныйДокумент.НекийПараметр |ИЗ | Документ.ПодчиненныйДокумент КАК ПодчиненныйДокумент |ГДЕ | ПодчиненныйДокумент.НекийДокументКлиента = &НекийДокументКлиента"; Запрос.УстановитьПараметр("НекийДокументКлиента", Источник.Ссылка); Результат = Запрос.Выполнить(); ТаблицаПодчиненныхДокументов=Результат.Выгрузить(); //получаем выборку, по которой будем создавать разные документы Запрос = Новый Запрос; Запрос.Текст = "ВЫБРАТЬ РАЗЛИЧНЫЕ | НекийДокументКлиентаТовары.НекийПараметр |ИЗ | Документ.НекийДокументКлиента.Товары КАК НекийДокументКлиентаТовары |ГДЕ | НекийДокументКлиентаТовары.Ссылка = &Ссылка"; Запрос.УстановитьПараметр("Ссылка", Источник.Ссылка); Результат = Запрос.Выполнить(); ВыборкаДетальныеЗаписи = Результат.Выбрать(); Пока ВыборкаДетальныеЗаписи.Следующий() Цикл НекийПараметр=ВыборкаДетальныеЗаписи.НекийПараметр; СтрокаПодчиненныйДокумент=ТаблицаПодчиненныхДокументов.Найти(НекийПараметр,"НекийПараметр"); Если СтрокаПодчиненныйДокумент=Неопределено Тогда //создаем новый док ПодчиненныйДокумент=Документы.ПодчиненныйДокумент.СоздатьДокумент(); иначе //используем старый ПодчиненныйДокумент=СтрокаПодчиненныйДокумент.Ссылка.ПолучитьОбъект(); ТаблицаПодчиненныхДокументов.Удалить(СтрокаПодчиненныйДокумент); Если ПодчиненныйДокумент.ПометкаУдаления Тогда ПодчиненныйДокумент.УстановитьПометкуУдаления(Ложь); КонецЕсли; КонецЕсли; ПодчиненныйДокумент.Заполнить(Источник); //и прочее нужное заполнение КонецЦикла; //Теперь надо перебрать оставшиеся строки в ТаблицаПодчиненныхДокументов и грохнуть лишние документы // КонецПроцедуры |
(24) спасибо! Значит помимо создания, проведения, пометки удаления, отмены проведения из модуля документа(формы) можно использовать еще и события. Буду посмотреть и такую схему. Правда еще непонятно, что из этого будет лучше/хуже. |
можно, работает. еще круче - с бизнес-процессами, но в двух словах уже не объяснить |
Текущее время: 02:54. Часовой пояс GMT +3. |