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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 21.11.2005, 16:43   #1  
ATimTim is offline
ATimTim
Участник
 
395 / 13 (1) ++
Регистрация: 10.06.2004
Адрес: Питер
Ошибка при пработе с Axapta Business Connection
Не могу заполнить listBox1 значениями из поля Name таблицы CustTable
На строчку кода listBox1.AddItem(CustTableBuffer.field('Name'),nil);
ругается ""Член группы не найден""
Подскажите, пожалуйста, в чем проблема.


PHP код:
uses   
   SysUtils
ComObjActiveX;
//..................
procedure TForm1.Button1Click(SenderTObject);
var 
axapta,
    
axaptaQuery,
    
AxaptaDataSource,
    
AxaptaQueryRun,
    
CustTableBufferVariant;
begin
  CoInitialize
(nil);
  
axapta := CreateOleObject('AxaptaCOMConnector.Axapta2');
  
axapta.Logon2'COM','1111','','','','','');

  
axaptaQuery      := axapta.CreateObject('Query');
  
axaptaDataSource := axaptaQuery.call('addDataSource',77);

  
axaptaQueryRun := axapta.CreateObject('QueryRun',AxaptaQuery);

  while 
axaptaQueryRun.call('Next') do begin
    CustTableBuffer 
:= AxaptaQueryRun.call('GetNo',1);
     
listBox1.AddItem(CustTableBuffer.field('Name'),nil); // не работает
  
listBox1.AddItem(CustTableBuffer.caption,nil);   //  работает без проблем }
   
end;
  
CoUninitialize();

end
Старый 21.11.2005, 17:06   #2  
ATimTim is offline
ATimTim
Участник
 
395 / 13 (1) ++
Регистрация: 10.06.2004
Адрес: Питер
Причем, в VB работает без проблем

PHP код:
Private Sub CommandButton1_Click()
  
Dim Axapta           As AxaptaCOMConnector.Axapta2
  
  Dim AxaptaQuery      
As AxaptaCOMConnector.IAxaptaObject
  Dim AxaptaDataSource 
As AxaptaCOMConnector.IAxaptaObject
  Dim AxaptaQueryRun   
As AxaptaCOMConnector.IAxaptaObject
  Dim CustTableBuffer  
As AxaptaCOMConnector.IAxaptaRecord
  
  
  Set Axapta 
= New AxaptaCOMConnector.Axapta2
  
  Axapta
.Logon2 "COM""1111"""""""""""

  
Set AxaptaQuery Axapta.CreateObject("Query")
  
Set AxaptaDataSource AxaptaQuery.Call("addDataSource"77)

  
Set AxaptaQueryRun Axapta.CreateObject("QueryRun"AxaptaQuery)
  
  
1
  
While AxaptaQueryRun.Call("Next")
    If 
AxaptaQueryRun.Call("Changed"77Then
      Set CustTableBuffer 
AxaptaQueryRun.Call("GetNo"1)
      
Worksheets(1).Cells(i1).Value CustTableBuffer.field("name")
      
1
    End 
If
  
Wend

End Sub 
Старый 21.11.2005, 17:39   #3  
ATimTim is offline
ATimTim
Участник
 
395 / 13 (1) ++
Регистрация: 10.06.2004
Адрес: Питер
Тихо сам с собою я веду беседу
PHP код:
    listBox1.AddItem(CustTableBuffer.field['Name'],nil); 
Вот и разгадка - использовать квадратные скобки вместо круглых.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
C# and AX Development: Using the .NET Business Connector for Dynamics AX / Axapta Blog bot DAX Blogs 0 18.12.2007 04:00
Inside Dynamics AX 4.0: Inside the Business Connector Blog bot DAX Blogs 0 04.10.2007 05:15
Говорят вышел SP2 для Axapta 3. Кто нибуть что знает на эту тему? soin DAX: Прочие вопросы 10 13.10.2003 10:43
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38
Введение в Аксапту Роман Кошелев DAX: Прочие вопросы 0 18.12.2001 14:00

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

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

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 21:23.