FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Pasar informacion de Access a SQL
Tengo un problema y es el siguiente: Tengo dos tablas en access, una tengo el encabezado de la factura y en la otra el detalle de dicha factura, necesito pasar esto a SQL, pero no me funciona, ejemplo, si quiero pasar tres facturas el pgm me pasa las tres facturas pero luego de esto me pasa dos del las tres y luego una de las dos. ejemplo mas detallado, tengo las facturas 125,126 y 127, ella me las pasa pero luego me pasa la 125 y 126 y luego de eso me pasa la 127.
En detalle el codigo es el siguiente: { =============== } { CAPTURA DEPOSIT } // Lista!!! { =============== } {$REGION 'CAPTURA DEPOSIT'} procedure grabatrans_deposit; var xsol : iDepositAdd; // Comando xDepositLineAdd : iDepositLineAdd; i,xregistros : Integer; xid : String; begin // SOLICITUD DE INCLUSION xmensaje.ClearRequests; xsol := xmensaje.AppendDepositAddRq; // Tablas DMConexion.Destino1.Close; DMConexion.Destino1.TableName := 't5_deposit'; DMConexion.Destino1.Open; xregistros := 0; while not DMConexion.Destino1.Eof do begin if DMConexion.Destino1.FieldByName('CashBackInfoRetAccRefFullName').AsVariant<>null then xsol.CashBackInfoAdd.AccountRef.FullName.SetValue(DMConexion.Destino1.FieldByName('CashBackInfoRetAc cRefFullName').AsString); if DMConexion.Destino1.FieldByName('CashBackInfoRetAmount').AsVariant<>null then xsol.CashBackInfoAdd.Amount.SetValue(DMConexion.Destino1.FieldByName('CashBackInfoRetAmount').AsFloa t); if DMConexion.Destino1.FieldByName('CashBackInfoRetMemo').AsVariant<>null then xsol.CashBackInfoAdd.Memo.SetValue(DMConexion.Destino1.FieldByName('CashBackInfoRetMemo').AsString); // DMConexion.Destino1.FieldByName('CashBackInfoRetTxnLineID').AsString := x_iDepositRetList.GetAt(i).CashBackInfoRet.TxnLineID.GetValue; // DMConexion.Destino1.FieldByName('CashBackInfoRettype_').AsInteger := x_iDepositRetList.GetAt(i).CashBackInfoRet.type_.GetValue; if DMConexion.Destino1.FieldByName('DepositToAccountRefFullName').AsVariant<>null then xsol.DepositToAccountRef.FullName.SetValue(DMConexion.Destino1.FieldByName('DepositToAccountRefFullN ame').AsString); // DMConexion.Destino1.FieldByName('DepositTotal').AsFloat := x_iDepositRetList.GetAt(i).DepositTotal.GetValue; if DMConexion.Destino1.FieldByName('Memo').AsVariant<>null then xsol.Memo.SetValue(DMConexion.Destino1.FieldByName('Memo').AsString); if DMConexion.Destino1.FieldByName('TxnDate').AsVariant<>null then xsol.TxnDate.SetValue(DMConexion.Destino1.FieldByName('TxnDate').AsDateTime); // DMConexion.Destino1.FieldByName('TxnID').AsString := x_iDepositRetList.GetAt(i).TxnID.GetValue; // DMConexion.Destino1.FieldByName('TxnNumber').AsInteger := x_iDepositRetList.GetAt(i).TxnNumber.GetValue; // DMConexion.Destino1.FieldByName('type_').AsInteger := x_iDepositRetList.GetAt(i).type_.GetValue; // falta es lista: x_iDepositRetList.GetAt(i).DataExtRetList.Count-1 do // ********************** // *** LINEAS DETALLE *** // ********************** // DMConexion.q.Create(nil); // dmConexion.q.Create(dmConexion); DMConexion.q.Connection:= dmConexion.Base2; //- dmConexion.q.SQL.Create; dmConexion.q.SQL.Clear; DMConexion.q.Close; xid := Copy(DMConexion.Destino1.FieldByName('TxnID').AsString,(Pos('-',DMConexion.Destino1.FieldByName('TxnID').AsString)+1),100); xid := TrimRight(xid); DMConexion.q.SQL.Add('select * from t5_deposit_det where TxnLineID like "%'+xid+'%"'); DMConexion.q.Open; if not DMConexion.q.IsEmpty then Begin while not DMConexion.q.Eof do begin xDepositLineAdd := xsol.DepositLineAddList.Append; if DMConexion.q.FieldByName('AccountRefFullName').AsVariant<>null then xDepositLineAdd.ORDepositLineAdd.DepositInfo.AccountRef.FullName.SetValue(DMConexion.q.FieldByName(' AccountRefFullName').AsString); if DMConexion.q.FieldByName('Amount').AsVariant<>null then xDepositLineAdd.ORDepositLineAdd.DepositInfo.Amount.SetValue(DMConexion.q.FieldByName('Amount').AsFl oat); if DMConexion.q.FieldByName('CheckNumber').AsVariant<>null then xDepositLineAdd.ORDepositLineAdd.DepositInfo.CheckNumber.SetValue(DMConexion.q.FieldByName('CheckNum ber').AsString); if DMConexion.q.FieldByName('ClassRefFullName').AsVariant<>null then xDepositLineAdd.ORDepositLineAdd.DepositInfo.ClassRef.FullName.SetValue(DMConexion.q.FieldByName('Cl assRefFullName').AsString); if DMConexion.q.FieldByName('EntityRefFullName').AsVariant<>null then xDepositLineAdd.ORDepositLineAdd.DepositInfo.EntityRef.FullName.SetValue(DMConexion.q.FieldByName('E ntityRefFullName').AsString); if DMConexion.q.FieldByName('Memo').AsVariant<>null then xDepositLineAdd.ORDepositLineAdd.DepositInfo.Memo.SetValue(DMConexion.q.FieldByName('Memo').AsString ); if DMConexion.q.FieldByName('PaymentMethodRefFullName').AsVariant<>null then xDepositLineAdd.ORDepositLineAdd.DepositInfo.PaymentMethodRef.FullName.SetValue(DMConexion.q.FieldBy Name('PaymentMethodRefFullName').AsString); // xDepositLineAdd.ORDepositLineAdd.DepositInfo.TxnID.SetValue(DMConexion.q.FieldByName('TxnID').AsStri ng); // xDepositLineAdd.ORDepositLineAdd.DepositInfo.TxnLineID.SetValue(DMConexion.q.FieldByName('TxnLineID' ).AsString); // xDepositLineAdd.ORDepositLineAdd.DepositInfo.TxnType.SetValue(DMConexion.q.FieldByName('TxnType').As String); DMConexion.q.Next; end; //- dmConexion.q.Destroy; // *************** // HACE EL REQUEST // *************** xresponseSet := nil; // Limpia Respuestas xresponseSet := xSessionManager.DoRequests(xmensaje); // Ejecuta la Solicitud xresponse := xResponseSet.ResponseList.GetAt(0); //DMConexion.q.Close; End; if xresponse.StatusCode <> 0 then FMain.Memo1.Lines.Add('ERROR: Exportando Transacciones Deposit'+#13#10+ StringOfChar(' ',11)+'STATUS CODE: '+IntToStr(xresponse.StatusCode)+ ' SEVERITY: '+xresponse.StatusSeverity+#13#10+ StringOfChar(' ',11)+'MESSAGE: '+xresponse.StatusMessage+#13#10) else Inc(xregistros); if xregistros<3 then begin DMConexion.Destino1.Next; end else DMConexion.Destino1.Close; end; FMain.Memo1.Lines.Add(IntToStr(xregistros)+' Registros de: Transacciones Deposit transferidos...'); FMain.Memo1.Lines.Add(StringOfChar('=',55)); Application.ProcessMessages; end; {$ENDREGION} Cualquier cosa me pueden mandar una sugerencia al siguiente correo: jorozco1000@hotmail.com Gracias Amigos |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Pasar informacion de delphi a word | warrior79 | Servers | 3 | 10-07-2010 04:31:00 |
Pasar informacion de un dbgrid a otro | schaka | Conexión con bases de datos | 3 | 11-02-2008 10:15:32 |
como pasar informacion de ibexpert a access | Nelly | Varios | 1 | 05-04-2006 09:38:51 |
pasar la informacion de un memo a un quickreport | soyhugo | Varios | 1 | 27-02-2004 18:36:05 |
Pasar información de un form a otro | davidgaldo | Varios | 3 | 10-02-2004 19:00:34 |
|