Нетабличная часть, или Как я провел выходные

Публикация № 1330500

Администрирование - Администрирование данных 1С - Обработка документов

групповое изменение операция бухгалтерская БГУ

Групповое изменение полей таблицы документа "Операция (бухгалтерская)" в конфигурации БГУ 2.0, созданного без использования типовых операций. Разработка выполнена на платформе 8.3.13.1644, БГУ 2.0.68.18, протестирована и применена на платформе 8.3.18.1128, БГУ 2.0.74.35.

Однажды у коллег возникла проблема. На первый взгляд, пустяк, да и только. Всего-то поменять счет дебета и одно субконто в отдельно взятом документе "Операция (бухгалтерская)". Это в конфигурации "Бухгалтерия государственного учреждения 2.0".

Задача осложнялась тем, что поменять надо было во всех строчках табличной части. Во всех восьмиста. Причем документ был сделан без использования типовых операций.

Разумеется, каждый, к кому обращались за советом, тут же принимался искать групповое изменение реквизитов. Ну, и я тоже. Понятно ведь, что коллеги слегка затупили, но я-то самый умный. Обычно я туплю по другим вопросам, а с этим – ща разберемся.

Ага, разобрались… В контекстном меню даже пункта такого нет. Захожу через Администрирование – обработка не видит табличную часть. Загружаю внешнюю обработку – и та не видит. Как вы догадываетесь, то же самое наблюдали все остальные.

И вот тут до нас дошло, что арифметика совсем не в нашу пользу. Проблемных строчек по-прежнему восемьсот, а подходящих инструментов – ни одного.

Секрет, в общем-то, прост – нет там никакой табличной части. Вместо нее документ показывает регистр бухгалтерии ЖурналПроводокЕПСБУ. А чтобы мало не показалось, регистр, в свою очередь, подсовывает виртуальную таблицу ДвиженияССубконто. А иначе никаких субконто мы вообще не увидим.

Все желающие могут полюбоваться на это безобразие в конструкторе запросов. Уверен, вам понравится. Если хотите увидеть субконто, правильный подход выглядит примерно так:

ВЫБРАТЬ
        Таб.НомерСтроки КАК НомерСтроки,
        Таб.СчетДт КАК СчетДт,
        Таб.СубконтоДт1 КАК СубконтоДт1,
        Таб.СубконтоДт2 КАК СубконтоДт2,
        Таб.СубконтоДт3 КАК СубконтоДт3,
        Таб.СчетКт КАК СчетКт,
        Таб.СубконтоКт1 КАК СубконтоКт1,
        Таб.СубконтоКт2 КАК СубконтоКт2,
        Таб.СубконтоКт3 КАК СубконтоКт3
ИЗ
        РегистрБухгалтерии.ЖурналПроводокЕПСБУ.ДвиженияССубконто КАК Таб
ГДЕ
        Таб.Регистратор.Ссылка = &Ссылка

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

Ну так вот, получается, что пока документ не откроет свою форму, он даже сам не знает, как много интересного в нем написано. А заодно и всякие полезные обработки ничего об этом не знают, они ведь тоже на форму не смотрят.

В общем-то, на этом месте можно было развести руками. Мол, "ну, не шмогла". Однако ж, восемьсот строчек смотрели на меня с ухмылкой и укоризной: "Какой ты, нахрен, программист после этого? Восемьсот раз не можешь сделать одно и то же. Разве не этому тебя учили на втором занятии по Бейсику?"

Так-то оно так, вот только в Бейсике не было регистра бухгалтерии. Особенно когда я его учил.

К счастью, проблема возникла в пятницу. На улице мороз, пандемия, все ходят в масках и меня заставляют. Короче, пока вы там все в масках свежим воздухом дышите, я лучше дома посижу, полезный инструмент склепаю. Пусть это будет мой личный хакатон. Глядишь, еще и статью напишу.

Собственно, вот и статья, а в конце – то, что получилось. Комплект состоит из расширения и внешней обработки. Расширение готовит почву для обработки, но без нее никто не отредактирует документы шаловливыми ручками. Поэтому и не стал делать все в одной компоненте. Вы можете поступать, как считаете нужным.

У расширения задан режим совместимости с 8.3.12. Просто дома я работаю на учебной версии платформы 8.3.13.1644, поэтому пришлось развернуть демобазу БГУ 2.0 примерно полугодовой давности. Когда притащил готовый результат на работу, более свежая платформа сама предложила поменять совместимость на 8.3.14.

Поскольку обратный переход не предусмотрен, здесь прилагается домашний вариант, то есть совместимый с 8.3.12.

Расширение здесь нужно только ради одного – выполнить действия, предусмотренные при изменении полей таблицы. А для этого нужны экспортные процедуры, живущие в модуле формы документа. Я даже не стал переназначать обработчики. Просто скопировал их в расширение и слегка поправил, как мне надо. То есть у меня это и не обработчики, и не их расширения, хотя очень похожи.

Догадываюсь, что такой подход вызовет критику, но для эпизодического применения и так сойдет. Впрочем, критика ожидается и принимается, как и полезные советы.

Кстати, в связи с расширением хотелось бы передать отдельный привет разработчикам БГУ. Ну, не считая тех приветов, которые мы регулярно посылаем в рабочее время. Вслух и мысленно.

Вот, к примеру, смотрю я модуль формы документа, и вроде бы, все хорошо. Обработчики события ПриИзменении у полей таблицы очень приятно выглядят. Например, у полей СчетДт / СчетКт они смотрят на своей форме выделенную строку, а потом вызывают из общего модуля процедуру СубконтоПриИзменении() и передают ей только поле таблицы. Отлично, поправлю их так, чтобы смотрели в мои строчки, и готово.

А для всех шести полей Субконто... обработчики вообще одинаковые и удивительно лаконичные:

&НаКлиенте
Процедура ДвиженияЖурналПроводокСубконтоДт1ПриИзменении(Элемент)
        БухгалтерскиеОперацииКлиент.СубконтоПриИзменении(Элемент,,, Истина);
КонецПроцедуры

Все та же СубконтоПриИзменении() с полем таблицы. Вообще ничего делать не надо.

Оказалось, что надо. Мне как-то в голову не приходило, что где-то дальше, за пределами формы, заново прочитывается строка, выделенная пользователем. Вот как раз в процедуре общего модуля то самое и происходит. Прям так, посреди процедуры:

Общий модуль БухгалтерскиеОперацииКлиент

Процедура СубконтоПриИзменении(Элемент, Знач ПрефиксСубконтоДанных = "", 
        Знач СтруктураИменСубконто = Неопределено, УстанавливатьКЭК = Ложь) Экспорт
        
        Таблица = БухгалтерскиеОперацииКлиентСервер.ПолучитьРодителяПоТипуЭлемента(Элемент, Тип("ТаблицаФормы"));
        Форма = БухгалтерскиеОперацииКлиентСервер.ПолучитьРодителяПоТипуЭлемента(Элемент, Тип("УправляемаяФорма"));
…
        ТекущиеДанные = Таблица.ТекущиеДанные;
…

КонецПроцедуры

Красота. Форму и таблицу узнают по переданному параметру, а текущую строку – просто глядя на форму. И ведь нет у процедуры ни одного параметра, чтобы передать строку при вызове. Так что и в расширении через параметры не передашь. Ну вот зачем так делать?

Можете не объяснять, я догадываюсь. 1С не всегда думает обо мне. Пришлось в расширении создать реквизит формы и туда класть строку, а заодно притащить процедуру общего модуля и слегка поправить. Как раз там, посреди процедуры.

Все грабли, по которым я прошелся на выходных, перечислять не буду. Главное, что инструмент готов и решает поставленную задачу. Теперь мне не стыдно смотреть на восемьсот вредных строчек. Пусть боятся.

Дополнение. О правильном подходе

Когда статья была опубликована, в комментариях мне подсказали, как надо было правильно подойти к задаче. Конечно же, я решил сделать второй вариант обработки, который обращается напрямую к регистру и поэтому не нуждается в обработчиках событий формы, а значит, и в расширении. Ведь так гораздо удобнее.

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

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

Здесь необходимо отметить принципиальную разницу в подходах к задаче. В первом варианте (с расширением) исправления делаются на форме документа, но в базу не вносятся, пока пользователь не нажмет "Записать и закрыть". При этом сначала можно исправить одни поля, потом другие и так далее, а потом уже сохранить все изменения сразу. А главное, пользователь видит реакцию формы на исправления и таким образом получает подсказки.

Во втором варианте исправления сразу вносятся в базу. Но какие-то поля могут быть исправлены сами по себе, а какие-то – лишь в связке с другими полями. Например, при попытке исправить только счет, скорее всего, будет получен отказ, потому что окажутся неправильно заполненными субконто и еще что-нибудь.

Значит, надо предусмотреть изменение группы взаимосвязанных полей, а это делает форму обработки громоздкой, а всю разработку выводит из категории слепленных на коленке для разового применения.

Получается, что, избегая трудностей с регистром, я реализовал в первом варианте решение, более корректное с точки зрения пользователя: сначала все поправим, посмотрим, проверим, и только потом сохраним.

К тому же, в первом варианте любое исправление происходит моментально, буквально на глазах у пользователя. Продолжительная операция сохранения документа вынесена за скобки и не задерживает работу. Ну, и до последнего момента пользователь может передумать и отказаться от изменений.

Второй вариант опубликован для желающих посмотреть на реализацию замечаний из комментариев. Но форма обработки по-прежнему предполагает исправление только одного поля, о чем сказано в предупреждающей надписи.

Скачать файлы

Наименование Файл Версия Размер
ИсправлениеОперацияБухгалтерскаяБГУ20.zip

.zip 42,83Kb
3
.zip 42,83Kb 3 Скачать
ИсправлениеОперацияБухгалтерскаяБГУ20Регистр.epf

.epf 10,91Kb
2
.epf 10,91Kb 2 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. gubanoff 50 24.11.20 12:11 Сейчас в теме
С таким же успехом можно было autoit запустить, чтобы нащелкал строчки за вас.
2. AnatolPopov 90 24.11.20 13:11 Сейчас в теме
(1) Опасаюсь я таких инструментов. Неизвестно, чего он там нащелкает.

А кроме того, цель была - дать инструмент коллегам, которые больше бухгалтера, чем программисты или админы. То есть понятную обработку с понятными полями и кнопками.
3. dfgdsfgsdfg2011 25.11.20 17:43 Сейчас в теме
Теперь мне не стыдно смотреть на восемьсот вредных строчек
- ахахаха
В условные 10 строк можно было программно поменять значения счета и субконто в движениях по регистру
4. AnatolPopov 90 25.11.20 18:42 Сейчас в теме
(3) До недавнего времени я не имел дела с регистром бухгалтерии. Так что не стал соваться в него. Решил, что проще запустить исправления через ту же дверь, куда обычно идут данные, а дальше их проводят.

Кстати, с удовольствием посмотрю на "условные 10 строк" в виде готовой обработки. Или просто в виде строк.

Задача, конечно, специфическая и, надеюсь, редкая, но неплохо так размялся ;)
5. dfgdsfgsdfg2011 26.11.20 16:17 Сейчас в теме
	Счет10960 = БухгалтерскиеОперации.СчетПоКоду("109.60", ТекущаяДата());
	
	НаборЗаписей = РегистрыБухгалтерии.ЖурналПроводокЕПСБУ.СоздатьНаборЗаписей();
	НаборЗаписей.Отбор.Регистратор.Установить(Объект.ОперацияБух);
	НаборЗаписей.Прочитать();
	Если НаборЗаписей.Количество() = 0 Тогда
		Возврат;
	КонецЕсли;
	
	 Для Каждого Запись Из НаборЗаписей Цикл
	  Если Запись.СчетДт = Счет10960 И Запись.СчетКт = Счет10960 Тогда
	  
		  ЕСли Запись.КПСДт = Объект.СтарыйКПС Тогда
	    	    Запись.КПСДт = Объект.НовыйКПС;
	      КонецЕсли;	  
	    	
	  КонецЕсли;
	  
  КонецЦикла;	  
	  
  НаборЗаписей.Записать();	
Показать
AnatolPopov; +1 Ответить
6. AnatolPopov 90 26.11.20 16:58 Сейчас в теме
(5) Два вопроса

Можно ли так же безнаказанно поменять сами счета?

Как насчет субконто?
7. dfgdsfgsdfg2011 26.11.20 18:16 Сейчас в теме
(6)
конечно можно
Запись.СчетКт             = Счет20531;
			  Запись.КПСКт				= СтрокаТЧ.КПС;
			  Запись.КЭККт   			= КОСГУ667;
			  Запись.СубконтоКт.Контрагенты = СтрокаТЧ.Контрагент;
			  Запись.СубконтоКт.Договоры= СтрокаТЧ.Договор;
AnatolPopov; +1 Ответить
8. AnatolPopov 90 26.11.20 19:32 Сейчас в теме
(7) Насчет последних двух строк. Когда я посмотрел, что за поля у регистра бухгалтерии, решил, что ну его нафиг. Особенно с субконто. Вообще не понял, что там за дебри такие.

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

Я ведь делал инструмент прежде всего для бухгалтера. То есть чтобы можно было из списка корректно выбрать, что заменить и на что заменить соответственно настройкам счета. Чтобы руками не лазить и циферки не путать.

В итоге получается, что ваше решение позволяет отказаться от обработчиков события ПриИзменении, потому что не трогаем форму. Значит, не нужно расширение. А все остальное, что касается интерфейса, остается.

Будет время - сделаю другой вариант обработки, который может с колес работать. Спасибо!
9. AnatolPopov 90 02.12.20 14:01 Сейчас в теме
(7) Извините за настырность, но я сделал вариант с регистром. И выяснилось, что первый вариант совсем не так плох, как казалось раньше. См. дополнение в конце статьи.
10. dfgdsfgsdfg2011 02.12.20 17:13 Сейчас в теме
(9)
Не смотрел вашу обработку, но типы субконто можно приводить через "СвязьПоТипу" https://its.1c.ru/db/metod8dev/content/2876/
Если нужна универсальность, то можно посмотреть реализацию в справочниках и документах где вызывается "БухгалтерскийУчетКлиентСервер.УстановитьЗаголовкиИДоступностьСубконто"
12. AnatolPopov 90 02.12.20 20:35 Сейчас в теме
(10) Спасибо, связь по типу используется на форме обработки. Новые значения выбираются в зависимости от типа значения, которое нужно заменить.

А речь шла о том, что поля вроде номера счета (наверно, только эти?) требуют изменения ещё нескольких полей. И если работать непосредственно с регистром, то делать это надо одновременно. А значит, выбирать и вводить кучу значений сразу. При работе с формой документа это можно разложить на сколько угодно шагов, причём каждый контролировать. Несомненно, это гораздо комфортнее для пользователя.
Оставьте свое сообщение

См. также

Пометка на удаление неиспользуемых элементов справочников и документов Промо

Чистка базы Обработка документов Обработка справочников v8 v8::УФ 1cv8.cf Абонемент ($m)

В ходе работы в программе в ней зачастую накапливается "мусор". Данная разработка может помочь убрать его... (обычные или управляемые формы)

1 стартмани

02.02.2010    34352    704    AnryMc    53    

FormCodeGenerator Программная доработка форм. Часть 2 (Режим работы "Режим сравнения форм") на примере ERP 2.5

Практика программирования Адаптация типовых решений Прочие инструменты разработчика v8 1cv8.cf Абонемент ($m)

Данная публикация является продолжением описания функционирования обработки "FormCodeGenerator " в режиме сравнения форм и генерирования кода на основании сравнения. Подходит для перевода уже доработанных форм с интерактивной доработки на программную. Данный режим работы обработки снизит издержки при дальнейших обновлениях конфигураций.

5 стартмани

21.12.2020    5683    21    huxuxuya    11    

"Учет штрафов ГИБДД" с возможной загрузкой из открытых источников в интернет Расширение конфигурации 1С: Предприятие 8.3

Обработка документов WEB v8 v8::УФ 1cv8.cf Россия БУ УУ Абонемент ($m)

Расширение конфигурации Бухгалтерия предприятия, редакция 3.0 (при минимальных изменениях любой типовой конфигурации), позволяющее вести историю данных по штрафам ГИБДД для справочника транспортных средств компании. Бонусом поставляется внешняя обработка, способная загружать эти данные из открытых источников в интернет.

4 стартмани

30.12.2019    14057    18    capitan    11    

Пакетное пробитие чеков на Онлайн-кассе при оплатах от физических лиц на расчетный счет

Банковские операции Кассовые операции Обработка документов v8 v8::БУ БП3.0 Россия БУ Абонемент ($m)

Автоматизация процесса пробития чеков онлайн при поступлениях на расчетный счет от физических лиц. Помогает сократить трудозатраты таким организациям, как МФЦ, Управляющие компании и т.д. Подходит для 1С:Бухгалтерия 3.0 любой версии (базовая, ПРОФ, КОРП). Не изменяет конфигурацию. Конфигурация остается на поддержке (типовая).

2 стартмани

24.09.2019    17862    7    r.resh39    7    

Групповая установка даты выплаты в документах "Отпуск" и "Командировка" на заданную дату и перерасчет отобранных документов Промо

Обработка документов Зарплата Управление персоналом (HRM) Зарплата v8 v8::СПР ЗУП3.x БУ Абонемент ($m)

Обработка позволяет расчетчикам сократить время, затрачиваемое на расчет отпусков и командировок.

2 стартмани

15.02.2017    16644    86    ser6702    18    

Списание (корректировка) задолженности контрагентов УНФ 1.6

Закрытие периода Дебиторская и кредиторская задолженность Обработка документов Дебиторская и кредиторская задолженность v8 УНФ Украина БУ Абонемент ($m)

Обнуление задолженности контрагентов в конфигурации "Управление небольшой (нашей) фирмой" версии 1.6 с помощью документа "Корректировка регистров".

1 стартмани

24.07.2019    28393    19    DMon    1    

Вам нравятся запросы в 1С?

Практика программирования Разработка v8 v8::Запросы 1cv8.cf Абонемент ($m)

Речь не только о том, что простейший запрос с "легальным" оформлением растянется на пол-экрана, речь еще обо всем, что нужно написать "в нагрузку" к тексту запроса. Все эти "Новый Запрос", "УстановитьПараметр" и последующие пляски с обработкой результата... Пора с этим заканчивать!

1 стартмани

03.07.2019    25065    7    m-rv    90    

Регистрация документов с измененной суммой

Обработка документов v8 1cv8.cf Абонемент ($m)

Обработка берет информацию из истории изменения документов. Удобна для администраторов, когда документы с измененной суммой по какой-то причине не регистрируются в плане обменов. Можно регистрировать не все документы, а только те, которые были изменены.

1 стартмани

20.04.2019    23392    6    ryan    0    

Помощник по закрытию месяца для УТ 11.3 Промо

Закрытие периода Обработка документов Закрытие периода Закрытие периода v8 v8::ОУ УТ11 Россия УУ Абонемент ($m)

Помощник по закрытию месяца для УТ 11.3. Имеет две функции: обнуление товаров "К оформлению" в интеркампани и обнуление отрицательных остатков в регистре "Себестоимость товаров".

5 стартмани

10.11.2017    28098    11    Zalipaka    1    

Валовая прибыль для УПП 1.3, КА 1.1 в режиме РАУЗ (работа типового отчета без доработок конфигурации)

Обработка документов v8 КА1 УПП1 УУ Абонемент ($m)

Простое и мгновенное решение для использования типового отчета "Валовая прибыль" в конфигурациях "Управление производственным предприятием 1.3", "Комплексная автоматизация 1.1" (а также отраслевых решений на их базе) при включенном режиме РАУЗ (расширенная аналитика учета затрат). Не требует настройки или изменения конфигурации, либо может быть, для дополнительного удобства, интегрировано в нее с минимальными доработками.

2 стартмани

21.01.2019    24301    30    stvorl    12    

Универсальный инструмент для переноса данных через табличный документ (УФ)

Обработка документов Универсальные обработки Обработка справочников v8 v8::УФ 1cv8.cf Абонемент ($m)

Для опытных пользователей, разработчиков, администраторов, консультантов

5 стартмани

15.10.2018    41045    146    json    44    

Работа с публикациями "Инфостарт"

Практика программирования О сообществе WEB v8 УУ Абонемент ($m)

Работа с рублевыми публикациями на сайте "Инфостарт": ведение клиентов, заказов, обновление файлов публикации, рассылка обновлений.

1 стартмани

13.09.2018    25424    13    RocKeR_13    16    

Прыг-Скок...или из MS EXCEL в 1С (8.2) (открытый код) Промо

Обработка документов Обработка справочников Загрузка и выгрузка в Excel v8 1cv8.cf Абонемент ($m)

Универсальная загрузка данных из Microsoft Office Excel. Автоматическая загрузка из любых по форме документов с очень удобным редактором. Почти готовый шаблон для любой конфигурации. Не требует регистрации-бесплатно.

1 стартмани

16.09.2015    69464    363    Tatitutu    48    

Помощник корректировки остатков ЕГАИС в небольшом магазине. Розница 2.2

Розничная торговля Обработка документов Розничная торговля v8 Розница Розничная и сетевая торговля (FMCG) Рестораны, кафе и фаст-фуд Россия УУ Абонемент ($m)

Данная обработка упрощает корректировку остатков алкогольной продукции небольшого магазина, где предполагается передача всей продукции в торговый зал сразу после приемки.

5 стартмани

08.09.2018    39298    84    asdfgcom    47    

Расширение резервов отпусков

Обработка документов Зарплата Зарплата v8 v8::СПР ERP2 ЗКГУ3.0 ЗУП3.x Россия БУ Абонемент ($m)

Произвольная настройка базы для расчета резервов отпусков.

2 стартмани

10.08.2018    32752    64    СергейКа    30    

Позиционирование в помещении с помощью нейросети по сигналу Wi-Fi. Интерактивная карта склада в 1С с показом позиции

Инструментарий разработчика Практика программирования v8 Абонемент ($m)

Данная публикация содержит в себе редактор и интерактивную карту склада или иного помещения, на которой в реальном времени отображается позиция устройства, координаты которого вычисляются по уровням сигнала нескольких роутеров Wi-Fi. В статье и приложенным к ней разработкам предлагаются инструменты и методика для реализации вычисления точной геопозиции внутри помещений с помощью нейронной сети. Конфигурация написана на релизе 1С:Предприятие 8.3.12.1412, клиентское приложение имеет минимальный уровень совместимости SDK -16.

5 стартмани

09.08.2018    33034    29    informa1555    30    

Перемещение остатков по счету МЦ04 между материально ответственными лицами для конфигураций (8.2). Промо

Обработка документов Универсальные обработки Учет ТМЦ Учет ТМЦ v8 БП2.0 Россия БУ Абонемент ($m)

Небольшая обработка, которая позволяет перекидывать остатки по счету МЦ04 с одного материально ответственного лица на другое

1 стартмани

22.11.2012    19269    102    niksaf    4    

Работа с данными выбора

Практика программирования Работа с интерфейсом v8 Россия Абонемент ($m)

В управляемом интерфейсе заложена мощная возможность описывать связи реквизитов формы через параметры. Установка параметров связей позволяет ограничить выбор данных так, чтобы целостность данных была обеспечена на этапе ввода. Однако без дополнительного программирования задать можно только самые простые связи. Такие условия связи, как зависимость от реквизита через точку или зависимость через дополнительное отношение, заданное в регистре сведений - уже задать без программирования не получится.

1 стартмани

17.07.2018    59886    24    kalyaka    16    

ВСТАВИТЬ В Справочник.Номенклатура (Код, Наименование) ЗНАЧЕНИЯ ("001", "Новый товар")

Практика программирования v8 v8::Запросы 1cv8.cf Абонемент ($m)

Вас не обманывают ваши глаза, это запрос на изменение данных! И это работает без прямого доступа к БД, регистрации и смс.

1 стартмани

01.06.2018    34062    91    m-rv    58    

Заполняем по шаблону (по умолчанию)

Практика программирования v8 v8::УФ 1cv8.cf Абонемент ($m)

Простой в подключении, универсальный и достаточно удобный механизм заполнения реквизитов произвольных документов/справочников значениями по умолчанию. Реализован в расширении, но может быть и непосредственно включен практически в любую конфигурацию на управляемых формах простым копированием одной формы и двух команд. Весь код в статье.

1 стартмани

08.02.2018    32099    20    mvxyz    17    

Универсальный ввод на основании (заполнение) документов Промо

Обработка документов v8 v8::УФ КА1 БП2.0 ЗУП2.5 УТ10 Розница УПП1 ERP2 БП3.0 КА2 ЗУП3.x Абонемент ($m)

Обработка позволяет на основании документов одного вида создавать документы другого.

2 стартмани

19.05.2010    43320    1905    nika.1007    90    

Корректировка остатков ЕГАИС, возврат из регистра 2, загрузка ТТН из файлов, другое для УТ10.3

Розничная торговля Обработка документов Розничная торговля v8 v8::ОУ УТ10 Россия БУ Абонемент ($m)

Набор обработок для автоматизации работы с ЕГАИС: Обработка корректировки остатков ЕГАИС для УТ 10.3, аналогичная имеющимся в УТ 11, Рознице 2.2. Автоматически формирует документы "Передача в торговый зал", "Акт постановки на баланс в торговом зале", "Акт списания в торговом зале". Обработка возврата из регистра 2 с подбором справок Б. Обработка формирования ТТН из файлов xml.

1 стартмани

24.01.2018    41293    18    biz-intel    6    

Расчет начисления зарплаты со сложной формулой, по данным из внешнего источника. ЗУП 3.1

Обработка документов Загрузка и выгрузка в Excel Зарплата Зарплата v8 v8::СПР ЗКГУ3.0 ЗУП3.x БУ Абонемент ($m)

Расчет начисления зарплаты со сложной формулой, по данным из внешнего источника по данным экономического отдела. ЗУП 3.1.

3 стартмани

20.12.2017    56014    34    mvv1975    7    

Печатная форма, сделанная как расширение конфигурации для БП 3.0. Новые возможности БСП

Практика программирования Универсальные печатные формы v8 БП3.0 Абонемент ($m)

Печатные формы на внешних обработках скоро канут в лету. На смену им приходят ПФ, реализованные в виде расширений конфигурации. Не нашел на сайте примеров таких расширений. Привожу пример подобного расширения для БП 3.0.

1 стартмани

06.12.2017    30618    56    kwazi    6    

Копирование меню в Трактир Management

Обработка документов Производство готовой продукции (работ, услуг) Производство готовой продукции (работ, услуг) v8 1cv8.cf Рестораны, кафе и фаст-фуд Россия УУ Абонемент ($m)

Механизм копирования меню в Трактир Management. Данная обработка расширяет функционал типового решения Трактир Management, позволяя быстро вводить в эксплуатацию новую точку путём создания нового меню на основании имеющегося.

1 стартмани

28.11.2017    32475    3    integrator1983    0    

Расширения конфигураций 1С: учимся перехватывать методы

Практика программирования v8 v8::УФ 1cv8.cf Абонемент ($m)

В этой статье я на примерах разберу некоторые механизмы расширений конфигураций 1С. А именно «перехваты» методов модуля объекта и «перехваты» событий формы и элементов формы. Данная статья написана с учебными целями, чтобы показать, как при помощи расширений конфигурации можно делать такие доработки, ради которых раньше приходилось снимать конфигурацию с поддержки.

1 стартмани

30.05.2017    153772    13    signum2009    48    

Упрощение работы с актами сверки в УТ/КА/УПП - вывод номеров счетов в документе и печатной форме

Обработка документов Печатные формы документов Дебиторская и кредиторская задолженность Дебиторская и кредиторская задолженность v8 КА1 УТ10 УПП1 БУ УУ Абонемент ($m)

Обычно акт сверки с клиентами содержат информацию о документах реализации товаров (накладных) и выполненных платежах. Но платежи делаются на основании счетов, номера которых отсутствуют в актах, что затрудняет собственно сверку. Данная обработка находит соответствующие расходным накладным счета/заказы, показывает их в форме документа и выводит в печатную форму акта.

2 стартмани

12.05.2017    35193    4    denmax    7    

Редактор движений документа. Сохранение в XML, обмен между базами, замена регистратора.

Обработка документов Универсальные обработки Обмен через XML v8 Абонемент ($m)

Редактор набора записей движений документа. Позволяет сохранить набор записей в XML, в настройки пользователя, прочитать сохраненный XML в другой идентичной базе, заменить регистратор. Можно изменять порядок записей, менять активность, как массово, так и по одной и др. Тонкий клиент, управляемые формы.

1 стартмани

07.09.2016    46888    162    Aphanas    4    

1С: Предприятие + корпоративный чат, как наладить оперативные уведомления за 10 минут

Практика программирования v8 Абонемент ($m)

Как сделать автоматические уведомления о разных событиях из 1С в корпоративный чат MyChat для сотрудников компании

1 стартмани

14.08.2016    52271    36    Demanoidos    60    

Хранение файлов в томах на диске (для УПП 1.3)

Практика программирования v8 УПП1 Абонемент ($m)

Доработка типовой УПП 1.3 в плане хранения присоединенных файлов вне базы данных

2 стартмани

05.06.2016    63911    11    wowik    32    

Загрузка Счета покупателя из PDF

Обработка документов Файловые протоколы обмена, FTP Оптовая торговля Оптовая торговля v8 v8::БУ БП3.0 Абонемент ($m)

Обработка позволяет загрузить счет покупателя из pdf-файла в документ Счет на оплату покупателю (Бухгалтерия 3.0)

2 стартмани

23.05.2016    23803    25    John_d    4    

Остатки на каждый день в запросе

Практика программирования Учет ТМЦ Учет ТМЦ v8 1cv8.cf УУ Абонемент ($m)

Запрос формирует остатки товаров на каждый день в пределах выбранного периода.

1 стартмани

26.04.2016    70289    19    arakelyan    24    

Обработка "Все одной кнопкой" (групповое создание и печать документов) для УПП ред. 1.3

Обработка документов Пакетная печать Кассовые операции Оптовая торговля Производство готовой продукции (работ, услуг) Кассовые операции Оптовая торговля Производство готовой продукции (работ, услуг) v8 УПП1 БУ УУ Абонемент ($m)

Данная обработка предназначена для группового создания, редактирования и печати основных документов («Реализация товаров и услуг», «Счет-Фактура выданный», «Счет на оплату клиентом», «Доверенность» на получение продукции, "Приходного кассового ордера") на основании документа «Заказ клиента». Основная цель обработки – оптимизация работы менеджеров при формировании пакета документов клиентам.

3 стартмани

09.04.2016    27391    32    SEOAngels    0    

Выполнение JavaScript кода из 1С в объекте Поле HTML Документа (HTML 5) и вызов события в 1С ПриНажатии

Практика программирования v8 1cv8.cf Россия Абонемент ($m)

Пример выполнения JS кода из 1С в Поле HTML Документа под управляемыми формами, с удобным получением результата в 1С(С помощью вызова привязанного события ПриНажатии к элементу ПолеHTMLДокумента)

1 стартмани

22.03.2016    90451    169    igo1    57    

Управление доставкой розничным покупателям

Обработка документов Розничная торговля Розничная торговля v8 УТ10 Розничная и сетевая торговля (FMCG) Россия УУ Абонемент ($m)

Дополнение для УТ 11.1, оформление доставки для розничного покупателя на основании кассового чека в связке с мягким чеком покупателя.

5 стартмани

10.03.2016    32641    8    Denis_Viktorovich    5    

Количество дней недели (понедельников/вторников/...) в заданном диапазоне одним запросом

Практика программирования v8 Абонемент ($m)

При реализации периодического авто-заполнения маршрутных листов по графику (недельному) необходимо было просчитать стоимость всего периода, с условием выездов только по определенным дням. Заморачиваться с обходом результата не хотелось. Пришлось написать "Небольшой" запрос.

1 стартмани

03.03.2016    21209    1    Alexander.Shvets    5    

Ночное восстановление последовательности документов (фоновым заданием) для БП 3.0

Обработка документов v8 v8::БУ БП3.0 Россия Абонемент ($m)

Внешняя обработка служит для восстановления последовательности документов в БП 3.0 за месяц, по расписанию, фоновым заданием на сервере 1С. Подключается как дополнительная обработка в режиме пользователя.

5 стартмани

25.02.2016    40362    92    SmArtist    8    

Простые радости жизни программиста 1С: выбор типа значения

Работа с интерфейсом Практика программирования v8 1cv8.cf Абонемент ($m)

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

1 стартмани

17.02.2016    55738    56    yuraos    18    

Яндекс.Деньги "Благотворительность"

Инструментарий разработчика Практика программирования v8 1cv8.cf Абонемент ($m)

Яндекс.Деньги теперь в 1С. Форма для приема благотворительных взносов. Форму легко сделать и вставить на любую страницу сайта или блога. Платежи будут приходить на ваш кошелек. На форме есть три способа платежа: из кошелька, с банковской карты, с баланса мобильного.

1 стартмани

16.02.2016    26308    8    Tatitutu    5    

Перечисление НДФЛ в бюджет РФ (13%, 30%)

Обработка документов Зарплата Зарплата v8 v8::СПР ЗУП2.5 БУ НУ НДФЛ Абонемент ($m)

Внешняя обработка (табличных частей), предназначенная для корректного заполнения документа "Перечисление НДФЛ в бюджет РФ". Конфигурация: Зарплата и Управление Персоналом, редакция 2.5

1 стартмани

27.01.2016    39980    239    1kashak    23    

Начисление процентов по кредитам и займам для 1С:Бухгалтерии 3.0

Обработка документов Займы, кредит, лизинг Займы, кредит, лизинг v8 БП2.0 Россия БУ Абонемент ($m)

Универсальная обработка по начислению процентов по кредитам и займам для 1С:Бухгалтерии 3.0 без изменения конфигурации

1 стартмани

22.01.2016    71484    171    algora    27    

Пакетная замена номенклатуры с учетом характеристик

Обработка документов Оптовая торговля Учет ТМЦ Оптовая торговля Учет ТМЦ v8 КА1 УТ10 УПП1 УУ Абонемент ($m)

Обработка "Пакетная замена номенклатуры" в Заказе покупателя, Реализации и Поступлении товаров с использованием отбора по значениям характеристик

1 стартмани

22.01.2016    28159    4    trendy    1    

Формирование актов сверки взаиморасчётов и групповая печать

Обработка документов Пакетная печать Дебиторская и кредиторская задолженность Дебиторская и кредиторская задолженность v8 БП2.0 БУ Абонемент ($m)

Обработка позволяет сформировать новые акты сверки и распечатать за период разом на принтере

3 стартмани

15.01.2016    38873    38    gortol    4