|
Ссылка на Документ из которого запускается внешняя обработка | ☑ | ||
|---|---|---|---|---|
|
0
sl_sl
10.09.07
✎
12:26
|
Товарищи подскажите как получить ссылку на Документ из которого запускается обработка.
Ситуация такая: Внешняя обработка запускается по кнопке печать (подключ. как внешн. печ. форм), но она берет и обрабатывает не тот док в котором запустилась а первый из журнала. Написан Запрос так: Запрос = Новый Запрос; Запрос.УстановитьПараметр("ДокументСсылка", СсылкаНаОбъект); Запрос.Текст = "ВЫБРАТЬ | ПриемНаРаботуВОрганизацию.Дата КАК Дата, | ПриемНаРаботуВОрганизацию.РаботникиОрганизации.( | ТрудовойДоговор.Номер, | ФизЛицо КАК ФизЛицо | ), | ТрудовойДоговор.Дата КАК Дата1, | ТрудовойДоговор.Номер, | ТрудовойДоговор.ФизЛицо КАК ФизЛицо |ИЗ | Документ.ТрудовойДоговор КАК ТрудовойДоговор | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПриемНаРаботуВОрганизацию КАК ПриемНаРаботуВОрганизацию | ПО ТрудовойДоговор.Номер = ПриемНаРаботуВОрганизацию.РаботникиОрганизации.ТрудовойДоговор.Номер | И ТрудовойДоговор.ФизЛицо.Наименование = ПриемНаРаботуВОрганизацию.РаботникиОрганизации.ТрудовойДоговор.ФизЛицо.Наименование | И ТрудовойДоговор.ФизЛицо = ПриемНаРаботуВОрганизацию.РаботникиОрганизации.ТрудовойДоговор.ФизЛицо |УПОРЯДОЧИТЬ ПО | ФизЛицо Выборка = Запрос.Выполнить().Выбрать(); |
|||
|
1
yalex
10.09.07
✎
12:28
|
ЭтотОбъект.Ссылка
|
|||
|
2
Kamili
10.09.07
✎
12:29
|
Заведи реквизит формы внешней обработки, в который и передавай, при открытии, ссылку на свой документ.
|
|||
|
3
sl_sl
10.09.07
✎
12:34
|
Вот так Написал.
Запрос = Новый Запрос; Запрос.УстановитьПараметр("ДокументСсылка", СсылкаНаОбъект.Ссылка); Запрос.Текст = "ВЫБРАТЬ | ПриемНаРаботуВОрганизацию.Дата КАК Дата, | ПриемНаРаботуВОрганизацию.РаботникиОрганизации.( | ТрудовойДоговор.Номер, | ФизЛицо КАК ФизЛицо | ), | ТрудовойДоговор.Дата КАК Дата1, | ТрудовойДоговор.Номер, | ТрудовойДоговор.ФизЛицо КАК ФизЛицо |ИЗ | Документ.ТрудовойДоговор КАК ТрудовойДоговор | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПриемНаРаботуВОрганизацию КАК ПриемНаРаботуВОрганизацию | ПО ТрудовойДоговор.Номер = ПриемНаРаботуВОрганизацию.РаботникиОрганизации.ТрудовойДоговор.Номер | И ТрудовойДоговор.ФизЛицо.Наименование = ПриемНаРаботуВОрганизацию.РаботникиОрганизации.ТрудовойДоговор.ФизЛицо.Наименование | И ТрудовойДоговор.ФизЛицо = ПриемНаРаботуВОрганизацию.РаботникиОрганизации.ТрудовойДоговор.ФизЛицо |УПОРЯДОЧИТЬ ПО | ФизЛицо | ГДЕ | ПриемНаРаботуВОрганизацию.Ссылка = &ДокументСсылка"; Ругается так : Ошибка при вызове метода контекста (Выполнить): {(18, 2)}: Синтаксическая ошибка "ГДЕ" <<?>>ГДЕ СсылкаНаОбъект обязательный реквизит с таким именем и его тип:ДокументОбъект.ПриемНаРаботуВОрганизацию (2) чуть подробней если можно..., я так понял форму создать которая буде открываться при нажатии печать и в ней я буду указывать конкретный док? |
|||
|
4
sl_sl
10.09.07
✎
12:37
|
по поводу (2) не спортивно как-то..., есть же наверняка вариант при котором будет получатся ссылка на док без доп. форм
|
|||
|
5
sl_sl
10.09.07
✎
13:04
|
Хелп
Поменял тип СсылкаНаОбъект на:ДокументСсылка.ПриемНаРаботуВОрганизацию тож нефига... Помогите: Как получить ссылку на док в котором запускается обработка, чтоб вытащить именно из этого дока данные? |
|||
|
6
Stepa86
10.09.07
✎
13:11
|
Так запусти отладку и глянь че лежит в СсылкаНаОбъект. У меня вот Запрос.УстановитьПараметр("ДокументСсылка", СсылкаНаОбъект.Ссылка);
работает как надо (в моей форме) |
|||
|
7
Divemaster
10.09.07
✎
13:14
|
Ну так тебе уже все написали: Ругается так : Ошибка при вызове метода контекста (Выполнить): {(18, 2)}: Синтаксическая ошибка "ГДЕ"
<<?>>ГДЕ Посмотри как ты условие используешь... |
|||
|
8
sl_sl
10.09.07
✎
13:18
|
при запросе в (3), выдает : Ошибка при вызове метода контекста (Выполнить): {(18, 2)}: Синтаксическая ошибка "ГДЕ"
<<?>>ГДЕ, Не могу найти ошибки... (6) Во внешней обработке отладчик не работает же... |
|||
|
9
Divemaster
10.09.07
✎
13:21
|
А если так:
ВЫБРАТЬ ПриемНаРаботуВОрганизацию.Дата КАК Дата, ПриемНаРаботуВОрганизацию.РаботникиОрганизации.( ТрудовойДоговор.Номер, ФизЛицо КАК ФизЛицо ), ТрудовойДоговор.Дата КАК Дата1, ТрудовойДоговор.Номер, ТрудовойДоговор.ФизЛицо КАК ФизЛицо ИЗ Документ.ТрудовойДоговор КАК ТрудовойДоговор ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПриемНаРаботуВОрганизацию КАК ПриемНаРаботуВОрганизацию ПО ТрудовойДоговор.Номер = ПриемНаРаботуВОрганизацию.РаботникиОрганизации.ТрудовойДоговор.Номер И ТрудовойДоговор.ФизЛицо.Наименование = ПриемНаРаботуВОрганизацию.РаботникиОрганизации.ТрудовойДоговор.ФизЛицо.Наименование И ТрудовойДоговор.ФизЛицо = ПриемНаРаботуВОрганизацию.РаботникиОрганизации.ТрудовойДоговор.ФизЛицо ГДЕ ПриемНаРаботуВОрганизацию.Ссылка = &ДокументСсылка УПОРЯДОЧИТЬ ПО ФизЛицо |
|||
|
10
sl_sl
10.09.07
✎
13:27
|
(9) спасибо подсказали тоже написал так
Запрос = Новый Запрос; Запрос.УстановитьПараметр("ДокументСсылка", СсылкаНаОбъект.Ссылка); Запрос.Текст = "ВЫБРАТЬ | ПриемНаРаботуВОрганизацию.Дата КАК Дата, | ПриемНаРаботуВОрганизацию.РаботникиОрганизации.( | ТрудовойДоговор.Номер, | ФизЛицо КАК ФизЛицо | ), | ТрудовойДоговор.Дата КАК Дата1, | ТрудовойДоговор.Номер, | ТрудовойДоговор.ФизЛицо КАК ФизЛицо |ИЗ | Документ.ТрудовойДоговор КАК ТрудовойДоговор | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Документ.ПриемНаРаботуВОрганизацию КАК ПриемНаРаботуВОрганизацию | ПО ТрудовойДоговор.Номер = ПриемНаРаботуВОрганизацию.РаботникиОрганизации.ТрудовойДоговор.Номер | И ТрудовойДоговор.ФизЛицо.Наименование = ПриемНаРаботуВОрганизацию.РаботникиОрганизации.ТрудовойДоговор.ФизЛицо.Наименование | И ТрудовойДоговор.ФизЛицо = ПриемНаРаботуВОрганизацию.РаботникиОрганизации.ТрудовойДоговор.ФизЛицо | ГДЕ | ПриемНаРаботуВОрганизацию.Ссылка = &ДокументСсылка |УПОРЯДОЧИТЬ ПО | ФизЛицо"; |
|||
|
11
Stepa86
10.09.07
✎
13:28
|
(8)Обработчик работает, только точку останова надо ставить в событии печать, где внешнюю обработку вызывает
|
|||
|
12
sl_sl
10.09.07
✎
13:28
|
Но зато теперь работает корректно, только первый документ из журнала а последующие кроме первого не видит данные... :(
|
|||
|
13
sl_sl
10.09.07
✎
14:10
|
Всем спасибо, разобрался
|
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |