Имя: Пароль:
1C
 
Стандартные действия формы документа ERP
, , ,
0 alex_newita
 
28.05.20
22:05
Раньше плотно программировал только на УПП. Подскажите по ERP. Создаю новый документ:
1. Как добавить стандартные действия типа: показать проводки (кнопка ДтКт), напечатать движения документа и т.д.?
2. Как заполнять значения реквизитов по умолчанию (Организация, Ответственный).
1 Фрэнки
 
28.05.20
22:21
Так выбери для примера себе самый маленький документ и смотри, как это сделано там.

1. Действия на каких-то добавляемых кнопках - это команды. Справа вверху в конфигуратое.

2. Заполнение в начале работы с формой- это первая процедура-обработчик в списке справа внизу.
2 Фрэнки
 
28.05.20
22:23
В комплекте с платформой на релизах еще есть конфигурация на упр-формах. Можно и там посмотреть.
3 alex_newita
 
28.05.20
22:27
(1) выбрал. посмотрел. все там сложнее, ну или не так прямолинейно.
4 alex_newita
 
28.05.20
22:30
команды эти толи глобальные, толи из других объектов. но как их добавить не пойму.
5 alex_newita
 
29.05.20
11:14
подниму
6 strange2007
 
29.05.20
11:27
(0) Я бы резко не лез менять конфу. Это вот прям совет от печального опыта многих. Там оооочень многое меняется настройками.
Что в УПП, что в ERP если что-то и добавлять, то только в виде внешних подсистем и всяких обработок. Например, можно добавить на форму кнопку сверху, способом добавления глобальной команды, в которой указать этот документ и навешать логику именно на команду (общие модули, обработки и прочее, но только в своей подсистеме). Если влезть в конфу, то потом будет беда бедовая
7 alex_newita
 
29.05.20
11:32
(6) логика не меняется. новый документ он там совсем боком и в своей подсистеме у меняю
8 strange2007
 
29.05.20
11:44
(7) Крутяк!!!!! Ну тады ищи команду ДТ/КТ, копируй её в свою подсистему и... пиши эту фигню сам. Я не смог малыми силами вычленить этот функционал из стандартной конфы, поэтому пришлось написать супер-мега-пупер универсальную кнопку.
Не рекламы ради, а для помощи просто, если надо будет, то поделюсь этой наикривейшей поделкой
9 strange2007
 
29.05.20
11:45
(0) >> Как заполнять значения реквизитов по умолчанию (Организация, Ответственный).
В настройках разве нет? Или это про самописный документ?
10 alex_newita
 
29.05.20
12:09
(9) нет в настройках. тут вообще все по другому (
11 strange2007
 
29.05.20
12:17
Угу, там тёмный лес, канавы и следы злых одинэсников. Про настройки не скажу, лучше подождать специалистов
12 aleks_default
 
29.05.20
12:47
(4)Чтобы добавить команду к документу, нужно у команды в типе параметра команды указать этот тип документа
13 aleks_default
 
29.05.20
12:50
Еще в модуле менеджеров документов смотри процедуры начинающиеся на "ДобавитьКоманды..."
14 aleks_default
 
29.05.20
12:51
В модуле формы документа в процедуре ПриСозданииНаСервере есть процедура ПодключаемыеКоманды.ПриСозданииНаСервере(ЭтотОбъект);
15 aleks_default
 
29.05.20
12:54
(12) Сейчас в ERP и КА кстати описание типов параметров команд много где реализовано через определяемые типы. Так что в большинстве случаев достаточно добавить твой документ в определяемый тип
16 alex_newita
 
29.05.20
12:58
(14) их в типовых видно сразу на форме в конфигураторе, значит добавляются не программно.
(12) у глобальной команды? не вижу у них типов параметров...
17 alex_newita
 
29.05.20
13:01
так параметры у общих команд нашел. как теперь выяснить какая нужна команда...
18 strange2007
 
29.05.20
13:04
(12) >> Чтобы добавить команду к документу, нужно у команды в типе параметра команды указать этот тип документа
И при каждом обновлении не забывать про это. Когда таких заметок становится под 1000, а то и больше, обновления превращаются в пытку, а иногда и вообще становятся невозможными. Потом начальник говорит, что программа фигня, надо переходить на САП
Всегда и везде всё одно и тоже. Ничего не меняется с 2009 года.
19 alex_newita
 
29.05.20
13:07
разобрался с ДтКт
нужно у обработки "ОтражениеДокументовВРеглУчете" у команды "ПроводкиРеглУчета" добавить в тип параметра нужный документ
20 alex_newita
 
29.05.20
16:57
теперь вопрос как  заполнять реквизиты по умолчанию "Организация" "Ответственный"?
21 rozer76
 
29.05.20
17:41
у Организация установи галку "Заполнять из данных заполнения"
в модуле объекта есть
Процедура ОбработкаЗаполнения(ДанныеЗаполнения, СтандартнаяОбработка)
.....
.....
ИнициализироватьДокумент(ДанныеЗаполнения);

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


"Сначала будет вызван обработчик события Обработка заполнения
и выполнен его код.
Если после выхода из этого обработчика его параметр СтандартнаяОбработка будет иметь значение Ложь, то платформа не будет пытаться
самостоятельно заполнить реквизиты нового объекта, а сразу же вызовет
событие формы При создании на сервере.
Если же после выхода из обработчика значение его параметра
СтандартнаяОбработка будет Истина (по умолчанию), то сначала платформа попытается заполнить значения реквизитов из данных
заполнения.
Если после этого реквизит все еще будет иметь значение своего типа
по умолчанию, то платформа попытается заполнить его значением запол-
нения, указанным в конфигураторе. Если же после данных заполнения
реквизит будет иметь значение, отличное от значения по умолчанию,
то значение заполнения использоваться не будет, даже если оно указано
для этого реквизита.
Таким образом, находясь в обработчике Обработка заполнения, разра-
ботчик может, проанализировав данные заполнения, самостоятельно
заполнить реквизиты нового объекта и затем использовать или не исполь-
зовать возможности стандартной обработки заполнения.
Какие возможны варианты? Мы уже говорили о них, перечислим
еще раз:
■■ если данные заполнения имеют значение Неопределено, это значит,
что новый объект создается командой Создать в панели действий или
командой Создать из списка, в котором отсутствуют отборы;
■■ если данные заполнения являются ссылкой, то выполняется ввод
на основании и разработчик должен самостоятельно обработать это
значение: либо сохранить его в реквизите формы, либо на основе этих
данных заполнить несколько реквизитов формы;
■■ если данные заполнения – это структура, значит, новый объект созда-
ется командой Создать из отобранного списка, или в общем случае
разработчик создает его программно, передавая эту структуру через
методы ОткрытьФорму(), ПолучитьФорму() или Заполнить().
"

Ну и дальше бла-бла из Жолтой Библии )

если что осталось заполнить - организацию или еще что то опиши в ИнициализироватьДокумент()