Como ejecutar Query c/AxaptaComConnector ?
BDD: SQL SErver.
ERP: Axapta. Utilizando delphis puedo mediante un AxaptaCOMConnector estar en el "ambiente" Axapta y poder generar su RecId -consecutivo que Axapta genera por Empresa-. Actualmente manejo este codigo y la consulta es general. procedure TForm1.Button2Click(Sender: TObject); var Axapta,AxaptaQuery,AxaptaDataSource, AxaptaQueryRun,AxaptaRange,AxaptaTableBuffer: variant; AxaptaExecute : variant; AxRec,no_tabla : variant; nombre_tabla : string; begin ListBox1.Clear; Axapta:=CreateOleObject('AxaptaCOMConnector.Axapta2'); Axapta.Logon2('act', 'act', '', '', '10.10.1.13', 'bmssafh'); AxRec :=Axapta.CreateObject('Clase_Global_FH'); nombre_tabla := 'actividad'; no_tabla := AxRec.Call('Obtener_Id_Tabla',nombre_tabla); AxaptaQuery := Axapta.CreateObject('Query'); AxaptaDataSource := AxaptaQuery.Call('AddDataSource',no_tabla); // AxaptaRange := AxaptaDataSource.Call('AddRange', 'dataareaid'); // AxaptaRange.Call('Value', 'fhl'); AxaptaQueryRun := Axapta.CreateObject( 'QueryRun', AxaptaQuery); While (AxaptaQueryRun.Call('Next')) do begin AxaptaTableBuffer := AxaptaQueryRun.Call('GetNo', 1); ListBox1.Items.Add(AxaptaTableBuffer.field['descripcion_actividad']); end; end; De que manera puedo realizar el simil de un where campo1 = var and campo2=var2 ...etc Ejemplo: select * from actividad where dataareaid = 'fhl' 1.- // AxaptaRange := AxaptaDataSource.Call('AddRange', 'dataareaid'); // AxaptaRange.Call('Value', 'fhl'); 2.- Con una sentencia O de esta forma. procedure TForm1.btn_InsertarClick(Sender: TObject); var Axapta,AxaptaQuery,AxaptaDataSource, AxaptaQueryRun,AxaptaRange,AxaptaTableBuffer: variant; AxRec : variant; val1 :variant; begin Axapta:=CreateOleObject('AxaptaCOMConnector.Axapta2'); Axapta.Logon2('act', 'act', '', '', '10.10.1.13', 'bmssafh'); AxRec := Axapta.CreateRecord('actividad'); axRec.ExecuteStmt('select * from actividad where dataareaid = 'fhl' '); val1:=axRec.field['descripcion_actividad']; end; Pero no funciona, alguna sugerencia?. Gracias y saludos Cordiales. |
La franja horaria es GMT +2. Ahora son las 09:51:32. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi