Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-09-2011
Paulao Paulao is offline
Miembro
 
Registrado: sep 2003
Ubicación: Rua D 31 Casa 1 - Inhoaíba - Rio de Janeiro - RJ - Brasil
Posts: 637
Poder: 21
Paulao Va por buen camino
Error de Invalid Data Packet

Tengo un Client DataSet en memoria y me lo da el error de Invalid Data Packet. Pero hizo muchas cosas y no he conseguido hacer funcionar mi CDS. Que puede ser este error?
Responder Con Cita
  #2  
Antiguo 06-09-2011
Paulao Paulao is offline
Miembro
 
Registrado: sep 2003
Ubicación: Rua D 31 Casa 1 - Inhoaíba - Rio de Janeiro - RJ - Brasil
Posts: 637
Poder: 21
Paulao Va por buen camino
Este es la funcion que me lo esta dande el error de Invalid Data packet
Código Delphi [-]
function TFrm_FrameworkBase.DoPADQryByWhere(AWhereVO: TDadosQryByWhere;
  CDSRetorno: TClientDataSet; Abortar, ExibeAguarde, ExibeMensagem: boolean): boolean;
var
  LExibeMensagem: TExibeMensagem;
  LResult_VO:     TRESULT;
  LResult:        OleVariant;
  LResultSet:     OleVariant;
  LFlags:         integer;
  LMensg:         string;
begin
  LExibeMensagem := nil;
  Result     := False;
  LResultSet := Unassigned;
  LResult_VO := TRESULT.Create;
  try
    LResult_VO.Clear;
    LResult    := LResult_VO.Serialize;
    try
      if ExibeAguarde then
        LExibeMensagem := TExibeMensagem.CreateMsg('Realizando consulta no Banco de Dados');
      CDSRetorno.Close;
      try
        if (FTipoConexao = 0) then
          FSocketSistema.AppServer.PADQryByWhere(AWhereVO.Serialize,
                                                 LResultSet,
                                                 LResult);
        end
        else
        begin
          if (Assigned(FDoPADQryByWhereCDSEvent)) then
          begin
            FDoPADQryByWhereCDSEvent(AWhereVO.Serialize,
                                     LResultSet,
                                     LResult);
          end;
        end;
        LResult_VO.Serialize := LResult;
        if LResult_VO.Codigo = 0 then
        try
          CDSRetorno.Data := LResultSet;
        except
          On E: Exception do
          begin
            LResult_VO.Codigo   := 99;
            LResult_VO.Mensagem := E.Message;
          end;
        end;
        Result := (LResult_VO.Codigo <> 99);
      except
        on E: Exception do
        begin
          LResult_VO.Codigo   := 99;
          LResult_VO.Mensagem := E.Message;
        end;
      end;
    finally
      if Assigned(LExibeMensagem) then
        LExibeMensagem.Free;
      if (LResult_VO.Codigo <> 0) and (ExibeMensagem) then
      begin
        if (LResult_VO.Codigo = 99) then
          LFlags := MB_ICONERROR
        else
          LFlags := MB_ICONWARNING;
        LMensg := LResult_VO.Mensagem;
        Application.MessageBox(PChar(LMensg),'Consulta ao Servidor',LFlags + MB_OK);
        if (Abortar) then
          Abort;
      end;
    end;
  finally
    try
      if (FResult_VO <> nil) then
      begin
        FResult_VO.Serialize := LResult_VO.Serialize;
      end;
    except
    end;
    LResult_VO.Free;
  end;
end;

Y esta es la linea del error

CDSRetorno.Data := LResultSet;
Responder Con Cita
  #3  
Antiguo 06-09-2011
Paulao Paulao is offline
Miembro
 
Registrado: sep 2003
Ubicación: Rua D 31 Casa 1 - Inhoaíba - Rio de Janeiro - RJ - Brasil
Posts: 637
Poder: 21
Paulao Va por buen camino
señores, mas una cosa, pues el valor de LResult es UNASSIGNED. Esto puede estar haciendo este problema?
Responder Con Cita
  #4  
Antiguo 07-09-2011
Avatar de DarKraZY
DarKraZY DarKraZY is offline
Miembro
 
Registrado: ago 2003
Posts: 460
Poder: 21
DarKraZY Va por buen camino
Cita:
Empezado por Paulao Ver Mensaje
señores, mas una cosa, pues el valor de LResult es UNASSIGNED. Esto puede estar haciendo este problema?
Seguramente sea por eso. Alguna vez he realizado asignaciones de la propiedad Data enter diversos ClientDataSet y nunca he tenido problemas. En tu caso, si está vacío deberías controlarlo antes de asignarla.
Saludos!
Responder Con Cita
  #5  
Antiguo 09-09-2011
Paulao Paulao is offline
Miembro
 
Registrado: sep 2003
Ubicación: Rua D 31 Casa 1 - Inhoaíba - Rio de Janeiro - RJ - Brasil
Posts: 637
Poder: 21
Paulao Va por buen camino
No, no es esto. Tuvo mirando algunos ejemplos y tengo visto que poner para Unssigned tipos Variant es normal mismo. Creo que puede ser los datos o vazio o con alguno datos con errores.
Responder Con Cita
  #6  
Antiguo 09-09-2011
Paulao Paulao is offline
Miembro
 
Registrado: sep 2003
Ubicación: Rua D 31 Casa 1 - Inhoaíba - Rio de Janeiro - RJ - Brasil
Posts: 637
Poder: 21
Paulao Va por buen camino
Quando hago debug me viene esse mensaje:
Código Delphi [-]
Unknown type: 17
Como es un Vector, para qualquer posicion en el vector, me lo da el error.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
clientdataset: Missing dataprovider or data packet Galahad Conexión con bases de datos 5 10-07-2021 02:10:20
error de invalid use of.. gonza_619 SQL 1 05-12-2010 02:49:28
Missing data provider or data packet mcalmanovici Providers 1 11-09-2007 05:55:15
Error invalid transaction... pichi Vignola Firebird e Interbase 3 06-10-2006 20:23:16
Error: Invalid use of keyword gusanita Varios 3 02-02-2006 02:47:15


La franja horaria es GMT +2. Ahora son las 10:13:12.


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
Copyright 1996-2007 Club Delphi