Как создать на основании документ ДанныеДляРасчетаЗарплаты?

1. 13.07.20 12:05 Сейчас в теме
Как создать на основании документ ДанныеДляРасчетаЗарплаты? Пытаюсь создать из собственного документа ДанныеДляРасчетаЗарплаты, написал обработку заполнения,в ней же указываю вид документа, но изначально команда о создании даже не отображается. Версия ЗУП (3.1.14.61)
Вознаграждение за ответ
Показать полностью
Найденные решения
4. dandykry 6 13.07.20 14:55 Сейчас в теме +0.5 $m
(3) Чтобы появилась команда Создать на основании, должны выполняться условия:
1 - В общем модуле СозданиеНаОснованииПереопределяемый.ПриОпределенииОбъектовСКомандамиСозданияНаОсновании должен быть добавлен объект.
2- В модуле менеджера документа, на основании которого создается документ, должна быть Функция ДобавитьКомандуСоздатьНаОсновании
3 - В модуле менеджера документа, который создается на основании, должна быть процедура ДобавитьКомандыСозданияНаОсновании, которая содержит процедуры ДобавитьКомандуСоздатьНаОсновании.

Например:

// Определяет список команд создания на основании.
//
// Параметры:
//   КомандыСозданияНаОсновании - ТаблицаЗначений - Таблица с командами создания на основании. Для изменения.
//       См. описание 1 параметра процедуры СозданиеНаОснованииПереопределяемый.ПередДобавлениемКомандСозданияНаОсновании().
//   Параметры - Структура - Вспомогательные параметры. Для чтения.
//       См. описание 2 параметра процедуры СозданиеНаОснованииПереопределяемый.ПередДобавлениемКомандСозданияНаОсновании().
//
Процедура ДобавитьКомандыСозданияНаОсновании(КомандыСозданияНаОсновании, Параметры) Экспорт
	
//Процедура в модуле менеджера ДанныеДляРасчетаЗарплаты
	Документы.ВашДокумент.ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании);
	
...........................
КонецПроцедуры


// Добавляет команду создания документа "ВашДокумент".
//
// Параметры:
//   КомандыСозданияНаОсновании - ТаблицаЗначений - Таблица с командами создания на основании. Для изменения.
//       См. описание 1 параметра процедуры СозданиеНаОснованииПереопределяемый.ПередДобавлениемКомандСозданияНаОсновании().
//
Функция ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании) Экспорт
        // Процедура в вашем документе
	Если ПравоДоступа("Добавление", Метаданные.Документы.ВашДокумент) Тогда
		КомандаСоздатьНаОсновании = КомандыСозданияНаОсновании.Добавить();
		КомандаСоздатьНаОсновании.Менеджер = Метаданные.Документы.ВашДокумент.ПолноеИмя();
		КомандаСоздатьНаОсновании.Представление = ОбщегоНазначенияУТ.ПредставлениеОбъекта(Метаданные.Документы.ВашДокумент);
		КомандаСоздатьНаОсновании.РежимЗаписи = "Проводить";
		
		Возврат КомандаСоздатьНаОсновании;
	КонецЕсли;

	Возврат Неопределено;
КонецФункции
Показать
Остальные ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. dandykry 6 13.07.20 12:18 Сейчас в теме
(1)
1) Общий модуль СозданиеНаОснованииПереопределяемый.ПриОпределенииОбъектовСКомандамиСозданияНаОсновании

2) В модуле менеджера твоего документа ДобавитьКомандуСоздатьНаОсновании, для исправлений в модуле
менеджера документа ДанныеДляРасчетаЗарплаты - поправить ДобавитьКомандыСозданияНаОсновании

3) В модуле объекта ДанныеДляРасчетаЗарплаты добавить ОбработкаЗаполнения и в ней заполнить

Если нельзя дописывать конфигурацию, путь другой
3. Provorez 13.07.20 13:09 Сейчас в теме
(2) немного не понял 2 пункт.
4. dandykry 6 13.07.20 14:55 Сейчас в теме +0.5 $m
(3) Чтобы появилась команда Создать на основании, должны выполняться условия:
1 - В общем модуле СозданиеНаОснованииПереопределяемый.ПриОпределенииОбъектовСКомандамиСозданияНаОсновании должен быть добавлен объект.
2- В модуле менеджера документа, на основании которого создается документ, должна быть Функция ДобавитьКомандуСоздатьНаОсновании
3 - В модуле менеджера документа, который создается на основании, должна быть процедура ДобавитьКомандыСозданияНаОсновании, которая содержит процедуры ДобавитьКомандуСоздатьНаОсновании.

Например:

// Определяет список команд создания на основании.
//
// Параметры:
//   КомандыСозданияНаОсновании - ТаблицаЗначений - Таблица с командами создания на основании. Для изменения.
//       См. описание 1 параметра процедуры СозданиеНаОснованииПереопределяемый.ПередДобавлениемКомандСозданияНаОсновании().
//   Параметры - Структура - Вспомогательные параметры. Для чтения.
//       См. описание 2 параметра процедуры СозданиеНаОснованииПереопределяемый.ПередДобавлениемКомандСозданияНаОсновании().
//
Процедура ДобавитьКомандыСозданияНаОсновании(КомандыСозданияНаОсновании, Параметры) Экспорт
	
//Процедура в модуле менеджера ДанныеДляРасчетаЗарплаты
	Документы.ВашДокумент.ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании);
	
...........................
КонецПроцедуры


// Добавляет команду создания документа "ВашДокумент".
//
// Параметры:
//   КомандыСозданияНаОсновании - ТаблицаЗначений - Таблица с командами создания на основании. Для изменения.
//       См. описание 1 параметра процедуры СозданиеНаОснованииПереопределяемый.ПередДобавлениемКомандСозданияНаОсновании().
//
Функция ДобавитьКомандуСоздатьНаОсновании(КомандыСозданияНаОсновании) Экспорт
        // Процедура в вашем документе
	Если ПравоДоступа("Добавление", Метаданные.Документы.ВашДокумент) Тогда
		КомандаСоздатьНаОсновании = КомандыСозданияНаОсновании.Добавить();
		КомандаСоздатьНаОсновании.Менеджер = Метаданные.Документы.ВашДокумент.ПолноеИмя();
		КомандаСоздатьНаОсновании.Представление = ОбщегоНазначенияУТ.ПредставлениеОбъекта(Метаданные.Документы.ВашДокумент);
		КомандаСоздатьНаОсновании.РежимЗаписи = "Проводить";
		
		Возврат КомандаСоздатьНаОсновании;
	КонецЕсли;

	Возврат Неопределено;
КонецФункции
Показать
5. Provorez 13.07.20 16:48 Сейчас в теме
6. Provorez 14.07.20 09:45 Сейчас в теме
7. dandykry 6 14.07.20 09:53 Сейчас в теме
(6) Хорошо) Утро вечера...Тоже самое можно внешкой сделать) но нужно будет расширять объекты с дополнительными отчетами и обработками
Оставьте свое сообщение
Вопросы с вознаграждением