FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
|
#1
|
|||
|
|||
Al, eso sería genial. A ver si nos podemos coordinar por mensaje interno.
Sí, si me entra un dinero extra probablemente compre una licencia Enterprise. (¡Pero es equivalente a un mes de sueldo!) |
#2
|
|||
|
|||
Ah, creo que encontré el problema, y de momento parece que todo funciona ok.
Las declaraciones de algunos overrides de AnyDAC no eran correctas, por lo que se estaba llamando a las funciones base de TDataset (que no hacen nada). Estos son los cambios necesarios, en caso de que alguien se encuentre con este problema: Código:
Source/uADCompDataSet.pas | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/Source/uADCompDataSet.pas b/Source/uADCompDataSet.pas index b324bc9..af9cf96 100644 --- a/Source/uADCompDataSet.pas +++ b/Source/uADCompDataSet.pas @@ -758,8 +758,8 @@ type procedure GetDetailLinkFields(AMasterFields, ADetailFields: TList); {$IFNDEF AnyDAC_FPC} override; {$ENDIF} function GetColumnField(AColumn: TADDatSColumn): TField; function GetFieldColumn(AField: TField): TADDatSColumn; overload; - function GetFieldData(AFieldNo: Integer; ABuffer: Pointer): Boolean; overload; {$IFNDEF AnyDAC_FPC} override; {$ENDIF} - function GetFieldData(AField: TField; ABuffer: Pointer): Boolean; overload; override; + function GetFieldData(AFieldNo: Integer; var ABuffer: TValueBuffer): Boolean; override; + function GetFieldData(AField: TField; var ABuffer: TValueBuffer): Boolean; override; {$IFNDEF AnyDAC_FPC} function GetStateFieldValue(AState: TDataSetState; AField: TField): Variant; override; {$ENDIF} @@ -3843,7 +3843,7 @@ begin end; {-------------------------------------------------------------------------------} -function TADDataSet.GetFieldData(AFieldNo: Integer; ABuffer: Pointer): Boolean; +function TADDataSet.GetFieldData(AFieldNo: Integer; var ABuffer: TValueBuffer): Boolean; var pRecBuf: PADBuffer; oColumn: TADDatSColumn; @@ -3983,7 +3983,7 @@ begin end; {-------------------------------------------------------------------------------} -function TADDataSet.GetFieldData(AField: TField; ABuffer: Pointer): Boolean; +function TADDataSet.GetFieldData(AField: TField; var ABuffer: TValueBuffer): Boolean; var pRecBuf: PADBuffer; begin @@ -4004,7 +4004,7 @@ begin if AField.DataType = ftBCD then CurrToBCD(PCurrency(pRecBuf + 1)^, PADBcd(ABuffer)^) else - ADMove(pRecBuf[1], ABuffer^, AField.DataSize); + ADMove(pRecBuf[1], PADBuffer(ABuffer)^, AField.DataSize); end; end; end; |
#3
|
||||
|
||||
Excelente. Qué bueno que pudiste resolverlo ajustando las directivas condicionales.
|
#4
|
||||
|
||||
Tienes suerte, yo necesito ahorrar durante unos 2 años evitando los lujos (carne, pan, leche, huevos...) para poder comprar una licencia...
|
#5
|
|||
|
|||
El equivalente a UN MES DE SUELDO, no ahorrar por un mes :-) - no se tú, pero a mí el sueldo me alcanza apenas
|
#6
|
||||
|
||||
Mes y medio
|
#7
|
||||
|
||||
¿De qué habláis?
|
#8
|
|||
|
|||
En caso de que alguien a futuro se encuentre con este problema, he seguido parchando AnyDAC para que funcione con las versiones recientes de Delphi (faltaban otros overrides por ahí). Obviamente no puedo publicar los fuentes, pero sí podría pasar los cambios necesarios por interno.
¡Saludos! |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
IDE en Delphi Tokyo 10.2.3 | hugobenitez | Varios | 6 | 27-06-2018 18:13:54 |
QuotedStr Delphi Tokyo 10.2 | rmendoza83 | Varios | 1 | 28-11-2017 02:53:41 |
Disponible Delphi 10.2 Tokyo | AgustinOrtu | Noticias | 54 | 05-07-2017 17:31:37 |
Delphi 10.2 Tokyo vs DevExpress | lgarcia | OOP | 2 | 05-06-2017 15:00:13 |
Compra de Delphi Tokyo o Berlin | pruz | Varios | 20 | 08-04-2017 17:02:46 |
|