Расчеты онлайн с клиентами "поехали"? Как откорректировать? Управление торговлей 11.5

07.10.22

Задачи пользователя - Корректировка данных

В публикации рассмотрен механизм, позволяющий перезаполнить в 1С:Управление торговлей 11.5 расчеты с клиентами новой архитектуры "онлайн".

Скачать файл

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

Наименование SM По подписке [?] Купить один файл
Управление торговлей 11.5. Расчеты Онлайн с клиентами "поехали"? Как откорректировать?:
.epf 8,09Kb
12
12
1 SM
Скачать Купить за 1 850 руб.

В 1С:Управление торговлей 11.5 есть возможность использовать 2 архитектуры расчетов: офлайн (старая) и онлайн (новая).

 

 

Если у вас этого переключателя не видно, значит у вас уже Онлайн.

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

Иногда после обновления ведомость взаиморасчетов или сверка взаиморасчетов показывает неправильные остатки или обороты. Радует, что "портится" только один регистр РасчетыСКлиентамиПоСрокам. Сверяться можно по-прежнему по регистру РасчетыСКлиентами. Но только с помощью консоли запросов т.к. все штатные отчеты будут брать данные из регистра РасчетыСКлиентамиПоСрокам.

Приложенная обработка делает следующее:
- очищает регистр РасчетыСКлиентамиПоСрокам по заданному Партнеру
- перезаполняет регистр РасчетыСКлиентамиПоСрокам по заданному Партнеру по данным регистра РасчетыСКлиентами.

 

 

Тестировалось на демо базе конфигурации 1С:Управление торговлей 11.5.9.119 на платформе 8.3.21.1302. Код обработки ниже.


&НаКлиенте
Процедура ПартнерПриИзменении(Элемент)
	ПартнерПриИзмененииНаСервере();
КонецПроцедуры

&НаСервере
Процедура ПартнерПриИзмененииНаСервере()
	
	ДолгОфлайн = 0;
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	РасчетыСКлиентамиОстатки.СуммаОстаток КАК ДолгОфлайн
	|ИЗ
	|	РегистрНакопления.РасчетыСКлиентами.Остатки(, АналитикаУчетаПоПартнерам.Партнер = &Партнер) КАК РасчетыСКлиентамиОстатки";
	
	Запрос.УстановитьПараметр("Партнер", Партнер);
	РезультатЗапроса = Запрос.Выполнить();
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	Если ВыборкаДетальныеЗаписи.Следующий() Тогда
		ДолгОфлайн = ВыборкаДетальныеЗаписи.ДолгОфлайн;
	КонецЕсли;
	
	ДолгОнлайн = 0;
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	РасчетыСКлиентамиПоСрокамОстатки.ДолгОстаток - РасчетыСКлиентамиПоСрокамОстатки.ПредоплатаОстаток КАК ДолгОнлайн
	|ИЗ
	|	РегистрНакопления.РасчетыСКлиентамиПоСрокам.Остатки(, АналитикаУчетаПоПартнерам.Партнер = &Партнер) КАК РасчетыСКлиентамиПоСрокамОстатки";
	
	Запрос.УстановитьПараметр("Партнер", Партнер);
	РезультатЗапроса = Запрос.Выполнить();
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	Если ВыборкаДетальныеЗаписи.Следующий() Тогда
		ДолгОнлайн = ВыборкаДетальныеЗаписи.ДолгОнлайн;
	КонецЕсли;
	
	Разница = ДолгОфлайн - ДолгОнлайн;
	
КонецПроцедуры

&НаКлиенте
Процедура ОткорректироватьРасчеты(Команда)
	ОчиститьРасчетыПартнераНаСервере(); 
	ОбработатьДокументыНаСервере();
	ПартнерПриИзмененииНаСервере();
КонецПроцедуры 

&НаСервере
Процедура ОчиститьРасчетыПартнераНаСервере()
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ РАЗЛИЧНЫЕ
	|	РасчетыСКлиентамиПоСрокамОбороты.Регистратор КАК Регистратор
	|ПОМЕСТИТЬ РегистраторыРасчетов
	|ИЗ
	|	РегистрНакопления.РасчетыСКлиентамиПоСрокам.Обороты(, , Регистратор, АналитикаУчетаПоПартнерам.Партнер = &Партнер) КАК РасчетыСКлиентамиПоСрокамОбороты
	|
	|ОБЪЕДИНИТЬ ВСЕ
	|
	|ВЫБРАТЬ
	|	РегистраторРасчетов.Ссылка
	|ИЗ
	|	Документ.РегистраторРасчетов КАК РегистраторРасчетов
	|ГДЕ
	|	РегистраторРасчетов.АналитикаУчетаПоПартнерам.Партнер = &Партнер
	|;
	|
	|////////////////////////////////////////////////////////////////////////////////
	|ВЫБРАТЬ РАЗЛИЧНЫЕ
	|	РегистраторыРасчетов.Регистратор КАК Регистратор
	|ИЗ
	|	РегистраторыРасчетов КАК РегистраторыРасчетов";
	
	Запрос.УстановитьПараметр("Партнер", Партнер);
	РезультатЗапроса = Запрос.Выполнить();
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	Пока ВыборкаДетальныеЗаписи.Следующий() Цикл
		НаборЗаписей = РегистрыНакопления.РасчетыСКлиентамиПоСрокам.СоздатьНаборЗаписей();
		НаборЗаписей.Отбор.Регистратор.Установить(ВыборкаДетальныеЗаписи.Регистратор);
		НаборЗаписей.Записать();
		
		РегистраторРасчетовОбъект = ВыборкаДетальныеЗаписи.Регистратор.ПолучитьОбъект();
		РегистраторРасчетовОбъект.Удалить();
	КонецЦикла; 
	
КонецПроцедуры

&НаСервере
Процедура ОбработатьДокументыНаСервере() 
	СписокОбъектовВзаиморасчетов = СписокОбъектовВзаиморасчетов();
	Для каждого СтрокаОбъектыВзаиморасчетов из СписокОбъектовВзаиморасчетов Цикл
		
		ДокументСсылка = НайтиРегистраторРасчетов(СтрокаОбъектыВзаиморасчетов);
		Если ДокументСсылка.Пустая() Тогда
			
			ДокументОбъект = Документы.РегистраторРасчетов.СоздатьДокумент();
			ДокументОбъект.Комментарий = "кс";
			ДокументОбъект.Валюта = СтрокаОбъектыВзаиморасчетов.Ссылка.Валюта;
			ДокументОбъект.АналитикаУчетаПоПартнерам = СтрокаОбъектыВзаиморасчетов.АналитикаУчетаПоПартнерам;
			ДокументОбъект.Организация = СтрокаОбъектыВзаиморасчетов.Ссылка.Организация;
			ДокументОбъект.ОбъектРасчетов = СтрокаОбъектыВзаиморасчетов.Ссылка;
			ДокументОбъект.ТипРасчетов = Перечисления.ТипыРасчетовСПартнерами.РасчетыСКлиентом;
			ДокументОбъект.Дата = ТекущаяДатаСеанса();
			ДокументОбъект.Записать(РежимЗаписиДокумента.Проведение);
			
		Иначе 
			
			ДокументОбъект = ДокументСсылка.ПолучитьОбъект();	
			
		КонецЕсли;
		
		ТаблицаДвижений = ПолучитьТаблицуДвижений(СтрокаОбъектыВзаиморасчетов.Ссылка); 
		НаборЗаписей = РегистрыНакопления.РасчетыСКлиентамиПоСрокам.СоздатьНаборЗаписей();
		НаборЗаписей.Отбор.Регистратор.Установить(ДокументОбъект.Ссылка);
		НаборЗаписей.Загрузить(ТаблицаДвижений);   
		НаборЗаписей.Записать();
		
	КонецЦикла;
КонецПроцедуры   

&НаСервере
Функция СписокОбъектовВзаиморасчетов()
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	РасчетыСКлиентамиОбороты.ОбъектРасчетов КАК Ссылка,
	|	РасчетыСКлиентамиОбороты.СуммаПриход КАК Приход,
	|	РасчетыСКлиентамиОбороты.СуммаРасход КАК Расход,
	|	РасчетыСКлиентамиОбороты.АналитикаУчетаПоПартнерам КАК АналитикаУчетаПоПартнерам
	|ИЗ
	|	РегистрНакопления.РасчетыСКлиентами.Обороты(, , , АналитикаУчетаПоПартнерам.Партнер = &Партнер) КАК РасчетыСКлиентамиОбороты
	|
	|УПОРЯДОЧИТЬ ПО
	|	РасчетыСКлиентамиОбороты.ОбъектРасчетов.Дата";
	
	Запрос.УстановитьПараметр("Партнер", Партнер);
	РезультатЗапроса = Запрос.Выполнить();
	СписокОбъектовВзаиморасчетов = РезультатЗапроса.Выгрузить();
	
	Возврат СписокОбъектовВзаиморасчетов;
	
КонецФункции

&НаСервере
Функция НайтиРегистраторРасчетов(СтрокаОбъектыВзаиморасчетов)
	Результат = Документы.РегистраторРасчетов.ПустаяСсылка();
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	РегистраторРасчетов.Ссылка КАК Ссылка
	|ИЗ
	|	Документ.РегистраторРасчетов КАК РегистраторРасчетов
	|ГДЕ
	|	РегистраторРасчетов.Валюта = &Валюта
	|	И РегистраторРасчетов.АналитикаУчетаПоПартнерам = &АналитикаУчетаПоПартнерам
	|	И РегистраторРасчетов.Организация = &Организация
	|	И РегистраторРасчетов.ОбъектРасчетов = &ОбъектРасчетов
	|	И РегистраторРасчетов.ТипРасчетов = &ТипРасчетов";
	
	Запрос.УстановитьПараметр("АналитикаУчетаПоПартнерам", СтрокаОбъектыВзаиморасчетов.АналитикаУчетаПоПартнерам);
	Запрос.УстановитьПараметр("Валюта", СтрокаОбъектыВзаиморасчетов.Ссылка.Валюта);
	Запрос.УстановитьПараметр("ОбъектРасчетов", СтрокаОбъектыВзаиморасчетов.Ссылка);
	Запрос.УстановитьПараметр("Организация", СтрокаОбъектыВзаиморасчетов.Ссылка.Организация);
	Запрос.УстановитьПараметр("ТипРасчетов", Перечисления.ТипыРасчетовСПартнерами.РасчетыСКлиентом);
	
	РезультатЗапроса = Запрос.Выполнить();
	
	ВыборкаДетальныеЗаписи = РезультатЗапроса.Выбрать();
	
	Если ВыборкаДетальныеЗаписи.Следующий() Тогда
		Результат = ВыборкаДетальныеЗаписи.Ссылка;
	КонецЕсли;
	
	Возврат Результат;
КонецФункции

&НаСервере
Функция ПолучитьТаблицуДвижений(ОбъектРасчетов)
	
	Запрос = Новый Запрос;
	Запрос.Текст = 
	"ВЫБРАТЬ
	|	РасчетыСКлиентамиОбороты.АналитикаУчетаПоПартнерам КАК АналитикаУчетаПоПартнерам,
	|	РасчетыСКлиентамиОбороты.ОбъектРасчетов КАК ОбъектРасчетов,
	|	РасчетыСКлиентамиОбороты.Валюта КАК Валюта,
	|	РасчетыСКлиентамиОбороты.Регистратор КАК РасчетныйДокумент,
	|	РасчетыСКлиентамиОбороты.СуммаОборот КАК Долг,
	|	РасчетыСКлиентамиОбороты.СуммаОборот КАК ДолгРегл,
	|	РасчетыСКлиентамиОбороты.СуммаОборот КАК ДолгУпр,
	|	РасчетыСКлиентамиОбороты.Период КАК Период,
	|	РасчетыСКлиентамиОбороты.Регистратор КАК ДокументРегистратор
	|ИЗ
	|	РегистрНакопления.РасчетыСКлиентами.Обороты(, , Регистратор, ОбъектРасчетов = &ОбъектРасчетов) КАК РасчетыСКлиентамиОбороты";
	
	Запрос.УстановитьПараметр("ОбъектРасчетов", ОбъектРасчетов);
	
	РезультатЗапроса = Запрос.Выполнить();
	ТаблицаДвижений = РезультатЗапроса.Выгрузить();
	ТаблицаДвижений.Колонки.Добавить("ВидДвижения", Новый ОписаниеТипов("ВидДвиженияНакопления"));
	ТаблицаДвижений.Колонки.Добавить("ХозяйственнаяОперация", Новый ОписаниеТипов("ПеречислениеСсылка.ХозяйственныеОперации"));
	
	Для каждого СтрокаДвижения из ТаблицаДвижений Цикл
		СтрокаДвижения.ВидДвижения = ВидДвиженияНакопления.Приход;
		СтрокаДвижения.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.РеализацияКлиенту;
		Если СтрокаДвижения.Долг < 0 Тогда  
			СтрокаДвижения.Долг = -СтрокаДвижения.Долг;	
			СтрокаДвижения.ДолгРегл = -СтрокаДвижения.ДолгРегл;	
			СтрокаДвижения.ДолгУпр = -СтрокаДвижения.ДолгУпр;
			СтрокаДвижения.ВидДвижения = ВидДвиженияНакопления.Расход;
			СтрокаДвижения.ХозяйственнаяОперация = Перечисления.ХозяйственныеОперации.ПогашениеЗадолженностиКлиента;
		КонецЕсли;
	КонецЦикла;
	
	Возврат ТаблицаДвижений;
КонецФункции

&НаКлиенте
Процедура ПриОткрытии(Отказ)
	ПартнерПриИзмененииНаСервере();
КонецПроцедуры

 

управление торговлей 11.5 взаиморасчеты расчеты онлайн офлайн новая архитектура сбой некорректно поехали

См. также

SALE! %

Перенос данных 1C Взаиморасчеты Оптовая торговля Логистика, склад и ТМЦ Файловый обмен (TXT, XML, DBF), FTP Системный администратор Программист Платформа 1С v8.3 1С:Управление торговлей 10 1С:ERP Управление предприятием 2 1С:Управление торговлей 11 1С:Комплексная автоматизация 2.х Россия Управленческий учет Платные (руб)

Можно проверить до покупки, оставьте заявку! Воспользовались более 268 компаний! Перенос в продаже с 2015г., и мы постоянно работаем над его развитием. Перенос данных из УТ 10.3 в УТ 11 | из УТ 10.3 в КА 2 | из УТ 10.3 в ERP. Предлагаем качественное и проверенное временем решение для перехода с УТ 10.3. Можно перенести начальные остатки, нормативно-справочную информацию и все возможные документы. При выгрузке можно установить отбор по периоду, организациям и складам. При выходе новых релизов конфигураций 1C оперативно выпускаем обновление переноса данных.

45650 27000 руб.

24.04.2015    192451    141    241    

272

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

Внешняя обработка для Бухгалтерии 3.0 - позволяет автоматически формировать документы «Акт сверки расчетов» с контрагентами за выбранный период с последующей фоновой отправкой на почту контрагента.

3000 руб.

25.11.2020    23279    208    8    

183

Печатные формы Взаиморасчеты Оптовая торговля Производство готовой продукции (работ, услуг) Акт сверки Бухгалтер Пользователь Оперативный учет Управляемые формы 1С:Управление торговлей 11 Россия Бухгалтерский учет Управленческий учет Платные (руб)

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

12000 руб.

13.03.2018    58048    193    76    

118

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

Мы доработали типовой платежный календарь, добавив в него планируемые постоянные расходы. Теперь можно видеть картину денежных средств в совокупности с текущей динамикой ожидаемых поступлений и расходов. Отчет позволяет увидеть остатки денежных средств в кассе и банке, их движение в разрезе статей ДДС с возможностью выбрать любой период (день, неделя, месяц). Данный отчет подходит для всех основных конфигураций линейки продуктов 1С:Предприятие 8.3 (8.3.18.1289): 1С:Бухгалтерия предприятия, редакция 3.0 (3.0.77.95), 1С:Управление торговлей, 1С:Комплексная автоматизация 2 (2.4.11.67), Объединенное решение: Модуль 1С:CRM 3 (3.0.21.3) +1С:ERP Управление предприятием 2 (2.4.13.111). Также есть возможность адаптации отчета под другие конфигурации. Мобильное приложение работает как на Android, так и на IOS.

2880 руб.

16.03.2021    21346    6    13    

26

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

Один из лучших вариантов отчета по дебиторской задолженности в 1С. Отображает сроки возникновения задолженности, просроченной задолженности с точностью до регистратора, а также многое другое, вне зависимости от схемы взаиморасчетов (online / offline) и объекта расчетов (УТ 11.3, 11.4, 11.5, КА 2.4, 2.5, ERP 2.4, 2.5), состояния флажка &amp;quot;по документам расчета&amp;quot; ( УТ 10, КА 1.1, УПП 1.3) в договоре. Группирует задолженность по интервалам. Имеет большое количество настроек. Не требует доработок конфигурации.

15120 руб.

28.09.2012    95666    592    281    

143

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

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

12000 руб.

22.07.2021    24543    29    34    

37

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

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

3600 руб.

10.02.2017    108687    650    173    

690

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

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

14400 руб.

29.04.2020    30005    88    151    

63
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Константин С. 671 21.11.22 22:37 Сейчас в теме
А работа штатной не подходит для формирования документов "РегистраторРасчетов"
e1cib/app/Обработка.ЗаполнениеРегистровВзаиморасчетов

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