Имя: Пароль:
1C
1С v8
Недостаточно фактических параметров
↓ (Волшебник 30.08.2023 14:58)
0 Underwood
 
30.08.23
14:28
Добрый день! Добавляю в 1С:ERP (2.5.12.87) обработку, которая будет создавать документы в 1С:ДО по правилам интеграции.

Вот код:

Функция СведенияОВнешнейОбработке() Экспорт
	
		ПараметрыРегистрации = ДополнительныеОтчетыИОбработки.СведенияОВнешнейОбработке("2.2.2.1");
			ПараметрыРегистрации.Вид = ДополнительныеОтчетыИОбработкиКлиентСервер.ВидОбработкиДополнительнаяОбработка();
			ПараметрыРегистрации.Версия = "1.0";
			ПараметрыРегистрации.БезопасныйРежим = Ложь;
			
			НоваяКоманда = ПараметрыРегистрации.Команды.Добавить();
			НоваяКоманда.Представление = НСтр("ru = 'Синхронизация'");
			НоваяКоманда.Идентификатор = "Синхронизация";
			НоваяКоманда.Использование = ДополнительныеОтчетыИОбработкиКлиентСервер.ТипКомандыВызовСерверногоМетода();
			НоваяКоманда.ПоказыватьОповещение = Истина;
			Возврат ПараметрыРегистрации;	   
			
			
КонецФункции

Функция ВыполнитьКоманду(ИдентификаторКоманды, ПараметрыКоманды) Экспорт
	
	Если ИдентификаторКоманды = "Синхронизация" Тогда
		Синхронизировать();
	КонецЕсли;
	
КонецФункции

//процедура выполняемой команды 
Процедура Синхронизировать()  
	
	Если НЕ ПараметрыСеанса.ИнтеграцияС1СДокументооборотПарольИзвестен Тогда
		ИнтеграцияС1СДокументооборотБазоваяФункциональностьВызовСервера.УстановитьНастройкиАвторизацииВПараметрыСеанса(
			Константы.ИнтеграцияС1СДокументооборотИмяПользователяДляОбмена.Получить(),
			Константы.ИнтеграцияС1СДокументооборотПарольДляОбмена.Получить(),
			ЛОжь);   
		ИнтеграцияС1СДокументооборотБазоваяФункциональностьВызовСервера.УстановитьВерсиюСервисаВПараметрыСеанса();	
	КонецЕсли;
	
КонецПроцедуры 


При выполнении обработки выдает ошибку:

Недостаточно фактических параметров
{ВнешняяОбработка.СозданиеДокументовВДОПоПравилам.МодульОбъекта(32)}:Константы.ИнтеграцияС1СДокументооборотПарольДляОбмена.Получить(),
{ВнешняяОбработка.СозданиеДокументовВДОПоПравилам.МодульОбъекта(21)}:Синхронизировать();
{ОбщийМодуль.ДополнительныеОтчетыИОбработки.Модуль(2034)}:ВнешнийОбъект.ВыполнитьКоманду(ИдентификаторКоманды, ПараметрыКоманды);
{ОбщийМодуль.ДополнительныеОтчетыИОбработки.Модуль(2100)}:ВыполнитьКомандуДополнительногоОтчетаИлиОбработки(
{ОбщийМодуль.ДополнительныеОтчетыИОбработки.Модуль(341)}:РезультатВыполнения = ВыполнитьКомандуВнешнегоОбъекта(ВнешнийОбъект, ИдентификаторКоманды, ПараметрыКоманды, АдресРезультата);
{(1)}:ДополнительныеОтчетыИОбработки.ВыполнитьКоманду(Параметры[0],Параметры[1])
{ОбщийМодуль.ОбщегоНазначения.Модуль(5362)}:Выполнить ИмяМетода + "(" + ПараметрыСтрока + ")";
{ОбщийМодуль.ДлительныеОперации.Модуль(1449)}:ОбщегоНазначения.ВыполнитьМетодКонфигурации(ИмяПроцедуры, ПараметрыВызова);
{ОбщийМодуль.ДлительныеОперации.Модуль(1426)}:ВызватьПроцедуру(ВсеПараметры.ИмяПроцедуры, ВсеПараметры.ПараметрыПроцедуры);


Не могу понять в чем дело) В других продуктах например 1с:ЗУП 3.1 этот код работает, меняется только общий модуль (ИнтеграцияС1СДокументооборотБазоваяФункциональностьВызовСервера). В чем дело не подскажите)?
1 Мультук
 
30.08.23
14:38
(0)

Вас не смущает, что в ERP количество параметров которые должны быть обязательно заданы в функции несколько другое (4 шт)

ИнтеграцияС1СДокументооборотБазоваяФункциональностьВызовСервера.УстановитьНастройкиАвторизацииВПараметрыСеанса(..)

?
2 Underwood
 
30.08.23
14:49
(1) Нет не смущает). Потому что у меня только 3 параметра отображается. https://disk.yandex.ru/i/wneVdoNXBFS-zQ.
3 Табуретко
 
30.08.23
14:54
(2) а запятая после Ложь?
4 Волшебник
 
30.08.23
14:57
(2) Не верьте всплывающим подсказкам
5 Underwood
 
30.08.23
14:58
(3) Нет, если запятую поставить тоже 3 параметра. Но я просто Ложь дописал заработало), не знаю что это было.
6 Волшебник
 
30.08.23
14:58
Само рассосалось
7 PR
 
30.08.23
15:17
(2) Да гон какой-то, там вообще-то шесть параметров, из которых первые 4 обязательных
И они все показываются в подсказке
8 Волшебник
 
30.08.23
16:06
может кэш глючил...