Архив метки: 1с

Не заполняется продавец в табличной части реализации 1С Розница

Ситуация: при подборе товаров в документе реализации не заполняется автоматически текущим продавцом соответствующий столбец в таблице с товаром.

Это не баг и не ошибка, по гуглу, «так и должно». Но руками выставлять нужного продавца — велика вероятность ошибки. А не заполнять — часть отчетов строится без «продавца». Например «Валовая прибыль».

Решение:

Добавляем подписку на событие для документа «Реализация», с событием «Перед записью». В принципе достаточно добавить что-то вроде:

Функция ПроверкаЗаполненияПродавца(Источник, Отказ) Экспорт
	//проверяем заполнена ли табличная часть реализации продаванами или нет
	для каждого стр из источник.Товары  цикл
		стр.продавец=источник.продавец;
	конеццикла;	
	///
КонецФункции

 

1C Бухгалтерия: учет комиссии при проведении документа «Поступление на р/с» на другом счете.

Решение не мое, подсмотрено. Но! Расскажу как реализовано, может кому пригодится.

Итак: в 1С Бухгалтерия приходят платежки из банка, с суммой, и выделенной в поле «назначение платежа» комиссией. Например:

Зачисление средств по операциям с МБК (на основании реестров платежей). Мерчант №121512049. Дата реестра 07.01.2018.СУММА 1215,53 В Т.Ч.Комиссия 24.31 Возврат покупки 0.00/0.00. НДС не облагается.
 

Нужно чтоб движения документа выглядели так:

Читать далее 1C Бухгалтерия: учет комиссии при проведении документа «Поступление на р/с» на другом счете.

Странное поведение документа ОплатаОтПокупателейПлатежнойКартой в 1С Розница 2.2

Если документ проведен, то денежки идут на регистры «Расчеты с контрагентами» и «Продажи по платежным картам», вне зависимости от того, прошла оплата по карточке или нет. Т.е. например типичная ситуация:

Создали документ «Эквайринговая операция», провели его, попробовали оплатить с карты — не прошло. Клиенту «ну тогда платите наличкой». Документ закрыли, но 1С по регистрам будет считать, что деньги то поступили не в кассу! Хотя по факту вообще они могут никуда не поступить.

И в отчете «Продажи по платежным картам» мы тоже ничего не увидим!! Дурдом.

Единственный вариант — писать свой отчет по продажам, в котором проверять на true поле «Оплата прошла».

 

Управление реле Arduino из 1с

В продолжение вот этого. Если у arduino есть ethernet шиелд, то ей вполне можно управлять даже из 1С. Например Реле питания.

&НаКлиенте
Функция ФункцияВосстановления(Свойство, Значение, ДополнительныеПараметры) Экспорт
   Если Свойство = "ДатаJSON"Тогда
      Возврат ПрочитатьДатуJSON(Значение, ФорматДатыJSON.ISO);
   КонецЕсли;
   Если Свойство = "СтрокаJSON" Тогда
      Возврат СокрЛП(Значение);
   КонецЕсли;
   Если Свойство = "uidJSON" Тогда
      Возврат Новый УникальныйИдентификатор(Значение);
   КонецЕсли;
КонецФункции

&НаКлиенте
Процедура СчитатьСтатус(Команда)
		файл=новый чтениетекста("http://"+этаформа.Объект.ИП+"/");
		фф=файл.Прочитать();
		файл.Закрыть();
		фф=стрзаменить(фф,"<!DOCTYPE HTML>","");
		тЧтение=Новый ЧтениеJson;
		тЧтение.УстановитьСтроку(фф);
		тДанные = ПрочитатьJSON(тЧтение, Ложь, , , "ФункцияВосстановления", ЭтотОбъект);
		пинсстат=тДанные.pinsstatus;			
		к=0;
		для каждого стат из пинсстат цикл			
			к=к+1;
			если к=1 и стат=1 тогда этаформа.Объект.Реле1=Истина иначе этаформа.Объект.Реле1=ложь;конецесли;
			если к=2 и стат=1 тогда этаформа.Объект.Реле2=Истина иначе этаформа.Объект.Реле3=ложь;конецесли;
			если к=3 и стат=1 тогда этаформа.Объект.Реле3=Истина иначе этаформа.Объект.Реле4=ложь;конецесли;
			если к=4 и стат=1 тогда этаформа.Объект.Реле4=Истина иначе этаформа.Объект.Реле4=ложь;конецесли;
		конеццикла;		
   		тЧтение.Закрыть(); 		
		этаформа.Объект.жсон=фф;

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

&НаКлиенте
Процедура СчитатьСтатус(Команда)
		файл=новый чтениетекста("http://"+этаформа.Объект.ИП+"/");
		фф=файл.Прочитать();
		файл.Закрыть();
		фф=стрзаменить(фф,"<!DOCTYPE HTML>","");
		тЧтение=Новый ЧтениеJson;
		тЧтение.УстановитьСтроку(фф);
		тДанные = ПрочитатьJSON(тЧтение, Ложь, , , "ФункцияВосстановления", ЭтотОбъект);
		пинсстат=тДанные.pinsstatus;			
		к=0;
		для каждого стат из пинсстат цикл			
			к=к+1;
			если к=1 и стат=1 тогда этаформа.Объект.Реле1=Истина иначе этаформа.Объект.Реле1=ложь;конецесли;
			если к=2 и стат=1 тогда этаформа.Объект.Реле2=Истина иначе этаформа.Объект.Реле3=ложь;конецесли;
			если к=3 и стат=1 тогда этаформа.Объект.Реле3=Истина иначе этаформа.Объект.Реле4=ложь;конецесли;
			если к=4 и стат=1 тогда этаформа.Объект.Реле4=Истина иначе этаформа.Объект.Реле4=ложь;конецесли;
		конеццикла;		
   		тЧтение.Закрыть(); 		
		этаформа.Объект.жсон=фф;

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

Проверка сходимости эквайринговых операций для Розница 2.2

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

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

— сумма эквайринговой операции не сходится с суммой реализации (клиент заплатил больше или меньше? документ реализации был изменен менеджером?)
— документ реализации один, а эквайринговых операций более одной (клиент заплатил с разных карточек? документ реализации был изменен менеджером?)

Публикация: https://infostart.ru/public/669370/