27.12.2005, 13:26 | #1 |
Moderator
|
Диалог в наследнике SalesReport_Invoice_RU
Добрый день!
Создал наследника SalesReport_Invoice_RU, пытаюсь вызвать диалог перегрузил PHP код:
PHP код:
В чем дело? Ведь я просто вызвал диалог, даже свои поля на него не добавил! Здесь вылетает .. PHP код:
|
|
27.12.2005, 13:53 | #2 |
Участник
|
Посмотри super();
В RunBase метод dialogMake возвращает dialogRunBase, а не dialog. |
|
|
За это сообщение автора поблагодарили: DreamCreator (2). |
27.12.2005, 14:20 | #3 |
Moderator
|
Цитата:
Сообщение от KMV
Посмотри super();
В RunBase метод dialogMake возвращает dialogRunBase, а не dialog. Вот так тоже падает: PHP код:
|
|
27.12.2005, 14:30 | #4 |
Участник
|
Если своих полей добовлять не надо, то достаточно перекрыть один метод showDialog.
Если свои поля нужны, нужно перекрыть метод dialog. |
|
27.12.2005, 14:35 | #5 |
Участник
|
И еще вопрос:
А какой отчет используете, т.е метод lastValueElementName перекрыт? |
|
27.12.2005, 14:54 | #6 |
Moderator
|
Цитата:
Сообщение от KMV
И еще вопрос:
А какой отчет используете, т.е метод lastValueElementName перекрыт? PHP код:
Да, нужны свои поля в диалоге! Поэтому удалил dialogMake(..) и перекрыл dialog PHP код:
|
|
27.12.2005, 15:05 | #7 |
----------------
|
вот это я не понял
Цитата:
удалил dialogMake(..)
|
|
27.12.2005, 15:23 | #8 |
Moderator
|
Цитата:
Сообщение от Wamr
может просто xpo покажешь?
+ в классе-родителе SalesPurchReport_RU я убрал модификатор (? помойму так) final в методе dialog. |
|
27.12.2005, 15:30 | #9 |
Участник
|
Ага, а параметры куда дел?
Код: public static void main(Args _args) { SalesReport_Invoice_RU launcher = new SalesReport_Invoice_RU(); Args args; ReportRun repRun; ; ... launcher.setParameters(_args.parmEnum(), _args.record(), _args.object()); launcher.setCaller(_args.caller()); ...... } |
|
27.12.2005, 15:36 | #10 |
Moderator
|
Цитата:
Сообщение от KMV
Ага, а параметры куда дел?
PHP код:
|
|
27.12.2005, 15:36 | #11 |
Участник
|
Проще всего скопировать метод main() класса SalesReport_Invoice_RU в класс наследник.
Ну и заменить: SalesReport_Invoice_RU launcher = new SalesReport_Invoice_RU(); в Вашем случае на: example launcher = new Example() |
|
27.12.2005, 15:45 | #12 |
----------------
|
нормально работает.
Попробуй инкрементную компиляцию. По симптомам похоже на неправильную отработку pack&unpack. |
|
27.12.2005, 15:49 | #13 |
Moderator
|
Цитата:
Сообщение от KMV
Проще всего скопировать метод main() класса SalesReport_Invoice_RU в класс наследник.
Ну и заменить: SalesReport_Invoice_RU launcher = new SalesReport_Invoice_RU(); в Вашем случае на: example launcher = new Example() Цитата:
Сообщение от Wamr
нормально работает.
Попробуй инкрементную компиляцию. По симптомам похоже на неправильную отработку pack&unpack. Я тоже на pack&unpack смотрю -- потому как после сброса один раз отрабатывает корректно, а на второй и последующие -- падает! Я делаю сброс используемых данных -- может есть еще средство? |
|
27.12.2005, 15:55 | #14 |
Участник
|
CurrentVersion поменяйте попробуйте
|
|
27.12.2005, 16:00 | #15 |
Moderator
|
Цитата:
Сообщение от kashperuk
CurrentVersion поменяйте попробуйте
PHP код:
|
|
27.12.2005, 16:15 | #16 |
----------------
|
там где падает _reportRun инициализирован?
|
|
27.12.2005, 16:20 | #17 |
Участник
|
У меня было нечто похожее, когда я в CurrentList пытался запихнуть объект класса QueryRun. Как оказалось, его необходимо отдельно пакатовать
return [#CurrentVersion,#CurrentList,itemQueryRun.pack()]; |
|
|
За это сообщение автора поблагодарили: DreamCreator (2). |
27.12.2005, 16:27 | #18 |
Участник
|
Для example можно так:
Код: public container pack() { return [#CurrentVersion, #CurrentList] + [super()]; } |
|
27.12.2005, 16:30 | #19 |
Moderator
|
Цитата:
Сообщение от Wamr
там где падает _reportRun инициализирован?
PHP код:
Цитата:
У меня было нечто похожее, когда я в CurrentList пытался запихнуть объект класса QueryRun.
|
|
27.12.2005, 16:32 | #20 |
----------------
|
кинь еще xpo SalesPurchReport_Invoice_RU & SalesPurchReport_RU
|
|
|
За это сообщение автора поблагодарили: DreamCreator (2). |