AXForum  
Вернуться   AXForum > Microsoft Dynamics NAV > NAV: Программирование
NAV
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 27.07.2007, 09:58   #1  
Asteni is offline
Asteni
Участник
 
8 / 10 (1) +
Регистрация: 24.07.2007
Здравствуйте, уважаемые!
У меня к вам просьба о помощи, я только неделю работаю с Navision 4.0, делаю отчет с выгрузкой в Ворд. При запуске отчета Navision выдает ошибку, то переменная не инициолизирована. Литературы пока нету. Можете помочь, как исправить ошибку?

PS: по поиску не нашел, извините, если повторяю тему.
Изображения
 
Старый 27.07.2007, 10:13   #2  
Greggy_imported is offline
Greggy_imported
Участник
Аватар для Greggy_imported
 
291 / 10 (1) +
Регистрация: 24.09.2004
для начала могу предложить включить дебаггер ... Shift + Ctrl + F11 ... и тогда хотя бы можно будет посмотреть место где вываливается ошибка и на какую переменную ругается
Старый 27.07.2007, 10:38   #3  
Asteni is offline
Asteni
Участник
 
8 / 10 (1) +
Регистрация: 24.07.2007
Дебаггер включил, посмотрел: ругается на переменную Word, которая обьявлена из 'Microsoft Word 11.0 Object Library'.Application, Дебаггер встает на эту перемменную. пробовал прописывать в коде Create(Word). не помогло, может это элементарно, но я только начал работать Navisionб поэтому прошу извинить Заранее спасибо
Старый 27.07.2007, 10:39   #4  
Milk is offline
Milk
Участник
 
242 / 12 (1) ++
Регистрация: 08.06.2006
Могу предположить, что вы используете переменную Automation типа Application. Чтобы с ней работать, надо сначала применить к ней функцию CREATE. А вообще-то вам бы не помешало выложить код, как вы начинаете работу с Word'ом.
-------
Так, если не CREATE, то выкладывайте код.
Старый 27.07.2007, 11:04   #5  
Asteni is offline
Asteni
Участник
 
8 / 10 (1) +
Регистрация: 24.07.2007
IF "Project Header".GETFILTER(Code) = '' THEN
BEGIN
Word.Quit;
CLEAR(Word);
ERROR('Выберите код ДФЛ!');
END;

****

Word.Selection.Find.Text:='!!Номер ДФЛ!!'; {Дебаггер встает на эту строчку}
Word.Selection.Find.Execute;
Word.Selection.TypeText:=FORMAT("Project Header".Code);
****
Report - OnPreReport()
CREATE(Word);

я тут кусками код написал, посмотрите, плиз
Старый 27.07.2007, 11:14   #6  
Milk is offline
Milk
Участник
 
242 / 12 (1) ++
Регистрация: 08.06.2006
А на какой строчке возникает ошибка?
И в каком триггере написан кусок кода, который вы привели?
Старый 27.07.2007, 11:47   #7  
Asteni is offline
Asteni
Участник
 
8 / 10 (1) +
Регистрация: 24.07.2007
Project Header - OnPreDataItem()
IF "Project Header".GETFILTER(Code) = '' THEN
BEGIN
Word.Quit;
CLEAR(Word);
ERROR('Âûáåðèòå êîä ÄÔË!');
END;

Project Header - OnAfterGetRecord()

Project Header - OnPostDataItem()
Word.Selection.Find.Text:='!!Íîìåð ÄÔË!!';
Word.Selection.Find.Execute;
Word.Selection.TypeText:=FORMAT("Project Header".Code);
Старый 27.07.2007, 11:55   #8  
Milk is offline
Milk
Участник
 
242 / 12 (1) ++
Регистрация: 08.06.2006
Так в каком месте возникает ошибка?
Если это весь код, касающийся ворда, то непонятно, где вообще открывается файл, в которм вы потом обращаетесь к Selection?
Старый 27.07.2007, 12:16   #9  
Asteni is offline
Asteni
Участник
 
8 / 10 (1) +
Регистрация: 24.07.2007
Спасибо я понял теперь,

CREATE(Word);
Word.Visible :=True;
Word.Documents.Open(FileName);

вот чего не хвататало спасибо за участие!
 


Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 04:17.
Powered by vBulletin® v3.8.5. Перевод: zCarot
Контактная информация, Реклама.