|
Ввод на основании | ☑ | ||
---|---|---|---|---|
0
tanaka2907
04.05.13
✎
19:39
|
Уважаемые. вот столкнулся с такой проблемой.
У меня есть документ "Приказ на командировку." в нем есть табличная часть, в которой я перечисляю командируемых подотчетных лиц. и я вот решил сделать чтобы проходя табличную часть создавался документ "командировочное удостоверение". Я так понимаю нужно делать ввод на основании???? попробовал конструктором как то не впечатлил результат... |
|||
1
EugeniaK
04.05.13
✎
19:46
|
(0) А что конкретно не получилось?
При вводе на основании в процедуре "ОбработкаЗаполнения" обходишь табличну часть и добавляешь по документу на каждую строку табличной части. |
|||
2
tanaka2907
04.05.13
✎
19:55
|
У меня в другом документе нету табличной части. а фамилию надо из табличной части забрать.
|
|||
3
tanaka2907
04.05.13
✎
19:56
|
&НаКлиенте
Процедура СозданиеКомандировочногоУдостоверения(Команда) Для каждого строка из Объект.ТабличнаяЧасть1 Цикл НовДок = документы.КомандировочноеУдостоверение.СоздатьДокумент(); НовДок.Заполнить(Что Сюда передать???); НовДок.ПолучитьФорму().Открыть(); КонецЦикла; КонецПроцедуры Это пишу в документе на основании которого идет ввод. нашел по гуглу |
|||
4
EugeniaK
04.05.13
✎
19:58
|
(2) Я же так и написала.
Отдельный домен на каждую строку табличной части. Просто конструктором без дополнительной модификации можно создать только документ с идентичными реквизитами. В данном случае нужно подкорректировать код вручную. Не знаете как, позовите программиста. |
|||
5
EugeniaK
04.05.13
✎
20:00
|
(3) А какие там поля в документе?
НовДок.Сотрудник = строка.Сотрудник; НовДок.Поле2 = строка.Поле2; ...... Только на сервере, а не на клиенте |
|||
6
tanaka2907
04.05.13
✎
20:01
|
Да я вообще то сам учусь))) что мне звать кого-то))
в документе "Приказ" в шапке: |
|||
7
tanaka2907
04.05.13
✎
20:02
|
номер
дата Дата С ДатаПо Цель |
|||
8
tanaka2907
04.05.13
✎
20:02
|
В табличной части Сотрудник и командировочноеУдостоверение
|
|||
9
tanaka2907
04.05.13
✎
20:03
|
5) Кстати да на Сервере надо ато документ не создать тогда ж получается
|
|||
10
EugeniaK
04.05.13
✎
20:23
|
(7)
Чир-то типа: Для каждого строка из Объект.ТабличнаяЧасть1 Цикл НовДок = Документы.КомандировочноеУдостоверение.СоздатьДокумент(); НовДок.Сотрудник = строка.Сотрудник; НовДок.Поле2 = строка.Поле2; НовДок.Дата = Объект.Дата; НовДок.ДатаС = Объект.ДатаС; НовДок.ДатаПо = Объект.ДатаПо; НовДок.Записать(); КонецЦикла; |
|||
11
tanaka2907
04.05.13
✎
20:28
|
Тобишь Процедуру ОбработкаЗаполнения() и создавать не надо???
|
|||
12
EugeniaK
04.05.13
✎
20:40
|
(11) Думаю, в данном конкретном случае проще кнопку в документ "Приказ на командировку."
|
|||
13
tanaka2907
04.05.13
✎
21:09
|
спасибо большое за помощь)
|
|||
14
tanaka2907
04.05.13
✎
22:11
|
Процедура СоздатьУдостоверение(Команда)
Для каждого строка из Объект.ТабличнаяЧасть1 Цикл ФизЛицо = строка.Сотрудник; строка.Удостоверение = ЗаполнениеУдостоверения(физЛицо); КонецЦикла; КонецПроцедуры &НаСервере Функция ЗаполнениеУдостоверения(Сотрудник) НовДок = Документы.КомандировочноеУдостоверение.СоздатьДокумент(); НовДок.ФизЛицо = Сотрудник; НовДок.Дата =Объект.Дата; НовДок.ДатаС = Объект.ДатаНачала; НовДок.ДатаПо = Объект.ДатаОкончания; НовДок.Приказ = Объект.Номер; НовДок.ДатаПриказа = Объект.Дата; НовДок.МестоКомандировки = Объект.ПунктНазначения; НовДок.ЦельКомандировки = Объект.ПоДокументу; НовДок.Записать(); //строка.удостоверение = НовДок.Ссылка; Возврат НовДок.Ссылка; КонецФункции как то так и получилось |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |