|
Недостаточно фактических параметров | ☑ | ||
---|---|---|---|---|
0
sjavar
01.08.12
✎
04:13
|
Здравствуйте!
Мне нужно "прикрутить" печатную форму ОС-1 к документу "Поступление ОС (забаланс)". Выдается ошибка: {Документ.ОС_Аренда_Поступление.МодульОбъекта(325)}: Недостаточно фактических параметров ТабДокумент = ФормированиеПечатныхФорм.ПечатьОС_1_Передача(Ссылка); Функция печати прописана так: Процедура Печать(ИмяМакета, КоличествоЭкземпляров = 1, НаПринтер = Ложь, НепосредственнаяПечать = Ложь) Экспорт // Получить экземпляр документа на печать Если ИмяМакета = "ПриходныйОрдерМ4" Тогда // Унифицированная форма М-4 (приходный ордер) ТабДокумент = ПечатьМ4(); ИначеЕсли ИмяМакета = "Справка0504833" Тогда // Унифицированная форма бухгалтерской справки (ф.0504833) ТабДокумент = ФормированиеПечатныхФорм.ПечатьСправки0540833(Ссылка); ИначеЕсли ИмяМакета = "ОС_1" Тогда // Унифицированная форма ОС-1 (акт приемки-передачи основных средств) //ТабДокумент = ФормированиеПечатныхФорм.ПечатьОС_1_Передача(Ссылка); ТабДокумент = ФормированиеПечатныхФорм.ПечатьОС_1_Передача(Ссылка); КонецЕсли; Если ТипЗнч(ТабДокумент) = Тип("ТабличныйДокумент") Тогда УниверсальныеМеханизмы.НапечататьДокумент(ТабДокумент, КоличествоЭкземпляров, НаПринтер, ОбщегоНазначения.СформироватьЗаголовокДокумента(ЭтотОбъект,"Поступление материальных запасов на забалансовый учет"), НепосредственнаяПечать); КонецЕсли; КонецПроцедуры // Печать Имя макета в Общих макетах: ОС_1 И функция ПолучитьСтруктуруПечатныхФорм прописана следующе: Функция ПолучитьСтруктуруПечатныхФорм() Экспорт СтруктураПечатныхФорм = Новый Структура; СтруктураПечатныхФорм.Вставить("Справка0504833","Бухгалтерская справка"); СтруктураПечатныхФорм.Вставить("ПриходныйОрдерМ4","Приходный ордер М4"); СтруктураПечатныхФорм.Вставить("ОС_1","Форма ОС-1"); Возврат СтруктураПечатныхФорм; КонецФункции // ПолучитьСтруктуруПечатныхФорм() Помогите, пожалуйста, разобраться. Может нужна обработка печати формы ОС-1? Или что-то еще дописать в Печать()? |
|||
1
izekia
01.08.12
✎
04:16
|
(0) сам как считаешь глядя на строку в которой возникла ошибка?
|
|||
2
ДенисЧ
01.08.12
✎
04:16
|
А что написано в ФормированиеПечатныхФорм.ПечатьОС_1_Передача() ?
Там сколько параметров? |
|||
3
izekia
01.08.12
✎
04:17
|
(2) не надо уже так откровенно)
|
|||
4
sjavar
01.08.12
✎
04:27
|
(1) Вообще как-то странно выходит: Макет называется "ОС-1", однако вот здесь ПечатьОС_1_Передача(Ссылка) он назван "ОС_1_Передача" (получилось с помощью Ctrl+пробел). Думаю, что что-то нужно добавить в Печать( [вот сюда] )
(2) 4 |
|||
5
ДенисЧ
01.08.12
✎
04:27
|
о. май. год.
|
|||
6
sjavar
01.08.12
✎
04:28
|
(2) там параметр ссылка
|
|||
7
sjavar
01.08.12
✎
04:30
|
(5) what?)
|
|||
8
ДенисЧ
01.08.12
✎
04:32
|
(8) you where pointed to error place, but do not want to understand
|
|||
9
izekia
01.08.12
✎
04:33
|
where же уже не можно?
|
|||
10
izekia
01.08.12
✎
04:34
|
(7) ФормированиеПечатныхФорм.ПечатьОС_1_Передача()
покажи объявление этого метода с параметрами |
|||
11
sjavar
01.08.12
✎
04:37
|
(7) oops, нет его. но печать бухсправки тоже нет в модуле, однако она выводится
|
|||
12
izekia
01.08.12
✎
04:43
|
Ни Че Го себе
|
|||
13
izekia
01.08.12
✎
04:43
|
(11) выдели и F12 нажми
|
|||
14
sjavar
01.08.12
✎
04:46
|
(13) what & and...?
|
|||
15
izekia
01.08.12
✎
04:52
|
(14) - (10)
|
|||
16
sjavar
01.08.12
✎
04:54
|
Функция ПечатьОС_1_Передача()
ТабДокумент = Новый ТабличныйДокумент(); ТабДокумент.КлючПараметровПечати = "ПАРАМЕТРЫ_ПЕЧАТИ_ОС1"; Запрос = Новый Запрос(); Запрос.УстановитьПараметр("Ссылка", Ссылка); Запрос.Текст = |
|||
17
izekia
01.08.12
✎
04:56
|
а откуда в Запрос.УстановитьПараметр("Ссылка", Ссылка); Ссылка берется?
и почему в ПечатьОС_1_Передача() пусто, а в вызове есть параметр? |
|||
18
sjavar
01.08.12
✎
05:03
|
(17) 1. да.
|ИЗ | Документ.ОС_Аренда_Поступление КАК ОС_Аренда_Поступление |ГДЕ | ОС_Аренда_Поступление.Ссылка = &Ссылка"; 2. не знаю. мне нужна нормальная обработка печати формы ОС-1, та что сейчас я делаю, меня не устраивает. |
|||
19
izekia
01.08.12
✎
05:25
|
обратитесь к специалисту
как вариант можно попробовать написать вот так: Функция ПечатьОС_1_Передача(Ссылка) |
|||
20
sjavar
01.08.12
✎
05:33
|
(19) специалист говорит: гугли, разбирайся сам. я новичок в 1с программировании.
пробовал, без толку. та же ошибка. |
|||
21
izekia
01.08.12
✎
05:37
|
зря он так
|
|||
22
sjavar
02.08.12
✎
06:31
|
Вобщем, ничего у меня пока не получается.(( Ошибка всё та же: "Недостаточно фактических параметров" в строке:
ТабДокумент = ФормированиеПечатныхФорм.ПечатьОС_1_Передача(Ссылка); Кто-нибудь делал обработку для формы ОС-1 " Акт приемки-передачи основных средств"? Нигде не могу найти в инете, скачал обработку на infostart.ru, но она не подходит. Помогите, пожалуйста. |
|||
23
Рэйв
02.08.12
✎
06:34
|
(22)Усвой как аксиому. Количество параметров(в скобках заголовка функции) должно равняться числу параметров при вызове. Иначе возникает твоя ошибка.
Есть еще значения по умолчанию, но тебе лучше не забивать голову, с этим бы разобраться |
|||
24
sjavar
02.08.12
✎
06:55
|
(23) Рэйв, спасибо за "разжеванный" материал.) Именно это мне как раз и нужно! А то в инете, да и в книгах тоже, порой так пишут, что нет желания в это вникать.
Однако, и здесь: Функция ПечатьОС_1_Передача(Ссылка) у меня стоит то же самое, что и в процедуре, но всё равно та же ошибка вылазит. |
|||
25
Рэйв
02.08.12
✎
07:01
|
(24)Функция ПечатьОС_1_Передача(Ссылка)
Это где у тебя? В каком модуле ты смотришь? |
|||
26
sjavar
02.08.12
✎
07:03
|
(25) В модуле объекта, естественно)
|
|||
27
Рэйв
02.08.12
✎
07:05
|
(26)И естественно это неправильно.
Не там она у тебя вызывается. Смотри такую функцию в общем модуле "ФормированиеПечатныхФорм" Если ты заметил вызов идет оттуда: ТабДокумент = ФормированиеПечатныхФорм.ПечатьОС_1_Передача(Ссылка); |
|||
28
Рэйв
02.08.12
✎
07:06
|
А функция модуля объекта, просто одноименная в другой локальной области видимости
|
|||
29
Рэйв
02.08.12
✎
07:07
|
...хотя я бы руки писателям всетаки оторвал за такое.
|
|||
30
sjavar
02.08.12
✎
07:16
|
(27) O_O Вижу эту процедурку печати в общих модулях!! Спасибо, и дальше как? Скопировать её в модуль объекта?
|
|||
31
Рэйв
02.08.12
✎
07:19
|
Дальше сравнивай количество параметров и делай так чтобы было правильно.
|
|||
32
Рэйв
02.08.12
✎
07:20
|
А вообще советую убрать "ФормированиеПечатныхФорм." и посмотреть что получится.
Сделай так: ТабДокумент = ПечатьОС_1_Передача(Ссылка); |
|||
33
Рэйв
02.08.12
✎
07:21
|
не спроста же они ее перенесли в модуль объекта.
|
|||
34
Рэйв
02.08.12
✎
07:21
|
только вызов забыли переделать видимо.
|
|||
35
Мимохожий Однако
02.08.12
✎
07:37
|
Копи пасто подвело
|
|||
36
sjavar
02.08.12
✎
08:31
|
Всем спасибо за участие, вопрос закрыт.) Отдельное спасибо Рэйву за науку!
|
|||
37
sjavar
02.08.12
✎
08:53
|
Нашел в базе документ, в котором форма ОС-1 уже "прикручена". Скопировал код, открываю документ в базе, кнопка есть, но когда посылаю на печать, открывает пустой документ. Теперь вот разбираюсь с обработкой печати. Но это уже я сам)
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |