![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Cómo leer datos
Buenos días.
Una pregunta: Cómo hacéis vosotros para leer los campos: Código:
Subsanacion :SubsanacionType; SinRegistroPrevio :SinRegistroPrevioType; Código:
SubsanacionType = (S, N); SinRegistroPrevioType = (S, N); Muchas Gracias. |
#2
|
||||
|
||||
Cita:
Para ello, has de tener en cuenta si el registro lo generas nuevo o es una subsanacion/rectificacion , de uno existenete en tu sif, exista o no en la AEAT, ya sea porque al generarse aun no se enviavan por estar trabajando como no verifactu, como que se rechazo al realizar el envio, etc... Si no es esta la pregunta, por favor clarifica la duda, un saludo.
__________________
Uno se alegra de ser útil. (Isaac Asimov) |
#3
|
|||
|
|||
Cita:
Obviamente no me he sabido explicar. Haz una prueba. Realiza una consulta de una factura que hallas subido y que no esté marcada como Macrodato y comprueba el valor de este campo en el resultado. Creo que te saldrá "S" Ya me dices si lo puedes hacer. Saludos. |
#4
|
|||
|
|||
Cita:
Buenas _Io Yo lo acabo de hacer y efectivamente, al imprimir el campo "Macrodato" de la factura ya subida que estoy consultando me devuelve una "S" (a pesar de que cuando la subí no le informé ese valor, y según la documentación si no se informa equivale a "N"). ¿cuál sería la duda? ¿porqué devuelve una "S" en vez de una "N"? Saludos |
#5
|
|||
|
|||
Cita:
Sí esa es la duda, todos los campos enumerados, como por ejemplo: Código:
SubsanacionType = (S, N); SinRegistroPrevioType = (S, N); La consulta sería: Cómo saber si la "S" del campo "Macrodato", la ha puesto la AEAT, o es el valor por defecto que toma?. Esto afecta a todos los campos enumerados. Saludos. |
#6
|
||||
|
||||
Cita:
__________________
Uno se alegra de ser útil. (Isaac Asimov) |
#7
|
|||
|
|||
Cita:
Ahí ya probé y la columna "Macrodato" está vacía, no se ve ningún valor (lo que según la documentación debería ser lo mismo que una "N"). Pero luego el objeto que devuelve viene con la "S". Es un poco raro/confuso ! |
#8
|
|||
|
|||
Hola, yo trabajo en C# y en algunas ocasiones me ha pasado algo parecido a lo que comentáis con algunas propiedades y con otras no.
No se si os habéis fijado que algunas propiedades tienen otra propiedad con el mismo nombre pero terminadas con la palabra "Specified" que es boleana. Por ejemplo hay Macrodato y MacrodatoSpecified Si esa segunda propiedad tiene valor falso, el valor de la propiedad principal no lo utilizo porque normalmente tiene el valor por defecto y no se ha informado. De hecho esta "segunda" propiedad la tengo que poner a cierto cuando informo algún valor en la "primera" propiedad del objeto que estoy rellenando, porque sino ese valor no se tiene en cuenta y por ejemplo si serializo el objeto a XML, esa "primera" propiedad no aparece, como si no la hubiese informado. A ver si os sirve para vuestro caso |
#9
|
|||
|
|||
Cita:
No he probado la consulta de datos desde mi programa, estoy pendiente de hacerlo mas adelante. Saludos |
#10
|
||||
|
||||
Hola, simplemente consulte , el valor especified, si esta en true , lo ha puesto uesto usted, si esta en false, obvie el valor puesto que es indiferente, si hace correctamente la deserializacion en el resultado no aparecen esas claves, lo acabo de verificar, una cosa es lo que observa precargado en la respuesta y otra lo que ha detener en cuenta, que son unicamnete las claves con el flag escificado a true.
Hola, @rci, no me he dado cuenta que ya habias respondido a ello, un saludo.
__________________
Uno se alegra de ser útil. (Isaac Asimov) |
#11
|
|||
|
|||
![]() Buenas Tardes.
La variables Specified, son privadas. Código:
RespuestaDatosRegistroFacturacionType = class(TRemotable) private ... FRefExterna_Specified: boolean; FSubsanacion_Specified: boolean; FRechazoPrevio_Specified: boolean; .... Voy a hacer esta prueba a ver si funciona Código:
RespuestaDatosRegistroFacturacionType = class(TRemotable) private ... FRefExterna_Specified: boolean; FSubsanacion_Specified: boolean; FRechazoPrevio_Specified: boolean; .... public property Subsanacion_Especificada: boolean read FSubsanacion_Specified; property RechazoPrevio_Especificada: boolean read FRechazoPrevio_Specified; ![]() Saludos. |
#12
|
|||
|
|||
Hola.
Probado, y funciona. Un poco rollo buscar las clases a modificar, pero ya está. Salu2. |
#13
|
|||
|
|||
Cita:
Código:
private bool macrodatoFieldSpecified; .... public bool MacrodatoSpecified { get { return this.macrodatoFieldSpecified; } set { this.macrodatoFieldSpecified = value; this.RaisePropertyChanged("MacrodatoSpecified"); } } |
#14
|
|||
|
|||
Cita:
Hola. Yo utilizo Delphi 12, y en la importación me crea estas propiedades como privadas, por eso lo de la chapucilla. Sinceramente no sé si en las opciones de importación existe alguna opción para que saque estas propiedades como públicas. También puede ser, que se pueda acceder a ellas y yo desconozca el cómo ![]() Una Clase de la importación del WDSL: Código:
RespuestaBaseType = class(TRemotable) private FCSV: string; FCSV_Specified: boolean; FDatosPresentacion: DatosPresentacionType; FDatosPresentacion_Specified: boolean; FCabecera: CabeceraType; FTiempoEsperaEnvio: Tipo6Type; FEstadoEnvio: EstadoEnvioType; procedure SetCSV(Index: Integer; const Astring: string); function CSV_Specified(Index: Integer): boolean; procedure SetDatosPresentacion(Index: Integer; const ADatosPresentacionType: DatosPresentacionType); function DatosPresentacion_Specified(Index: Integer): boolean; public destructor Destroy; override; published property CSV: string Index (IS_OPTN) read FCSV write SetCSV stored CSV_Specified; property DatosPresentacion: DatosPresentacionType Index (IS_OPTN) read FDatosPresentacion write SetDatosPresentacion stored DatosPresentacion_Specified; property Cabecera: CabeceraType read FCabecera write FCabecera; property TiempoEsperaEnvio: Tipo6Type read FTiempoEsperaEnvio write FTiempoEsperaEnvio; property EstadoEnvio: EstadoEnvioType read FEstadoEnvio write FEstadoEnvio; end; Aquí pongo la modificación: Código:
RespuestaBaseType = class(TRemotable) private FCSV: string; FCSV_Specified: boolean; FDatosPresentacion: DatosPresentacionType; FDatosPresentacion_Specified: boolean; FCabecera: CabeceraType; FTiempoEsperaEnvio: Tipo6Type; FEstadoEnvio: EstadoEnvioType; procedure SetCSV(Index: Integer; const Astring: string); function CSV_Specified(Index: Integer): boolean; procedure SetDatosPresentacion(Index: Integer; const ADatosPresentacionType: DatosPresentacionType); function DatosPresentacion_Specified(Index: Integer): boolean; public property CSV_Especificada: boolean read FCSV_Specified; property DatosPresentacion_Especificada: boolean read FDatosPresentacion_Specified; public destructor Destroy; override; published property CSV: string Index (IS_OPTN) read FCSV write SetCSV stored CSV_Specified; property DatosPresentacion: DatosPresentacionType Index (IS_OPTN) read FDatosPresentacion write SetDatosPresentacion stored DatosPresentacion_Specified; property Cabecera: CabeceraType read FCabecera write FCabecera; property TiempoEsperaEnvio: Tipo6Type read FTiempoEsperaEnvio write FTiempoEsperaEnvio; property EstadoEnvio: EstadoEnvioType read FEstadoEnvio write FEstadoEnvio; end; Saludos !!! |
#15
|
||||
|
||||
Cita:
__________________
Uno se alegra de ser útil. (Isaac Asimov) |
#16
|
|||
|
|||
Cita:
![]() No se exactamente a que propiedades te refieres con esto de los milisegundos, pero supongo que no me ocurre el error porque al rellenar todas las propiedades de fecha ya les doy el formato esperado. Saludos |
#17
|
||||
|
||||
Cita:
Hola, buenos dias el parametro FechaHoraUsoGenREgistro es un System.DateTime , si lo paso directamente, me genera el xml, asi: Código:
<FechaHoraHusoGenRegistro >2024-10-01T15:05:26.908824+02:00</FechaHoraHusoGenRegistro> Al enviar daba error de la fecha no correcta. Código:
<EstadoRegistro>AceptadoConErrores</EstadoRegistro> <CodigoErrorRegistro>2004</CodigoErrorRegistro> <DescripcionErrorRegistro>El valor del campo FechaHoraHusoGenRegistro debe ser la fecha actual del sistema de la AEAT, admitiéndose un margen de error de: 120 segundos.</DescripcionErrorRegistro> Como no hay forma de evitarlo por codigo,. lo cambie a string. Por lo menos en c# VisualStudio 2015, que es la version que yo uso, pero ya te comente que la 2022, es diferente, en muchas cosas.
__________________
Uno se alegra de ser útil. (Isaac Asimov) |
#18
|
|||
|
|||
Cita:
Código:
DateTime currentDateTime = GetDateTime(); // Coge la fecha y hora de internet o del ordenador // Convert to Veri*Factu FORMAT EXPECTED: YYYY-MM-DDThh:mm:ssTZD (ej: 2024-01-01T19:20:30+01:00) (ISO 8601) var creationDateTime = new DateTime(currentDateTime.Year, currentDateTime.Month, currentDateTime.Day, currentDateTime.Hour, currentDateTime.Minute, currentDateTime.Second, DateTimeKind.Local); registroFacturacionAlta.FechaHoraHusoGenRegistro = creationDateTime; Saludos |
#19
|
||||
|
||||
Cita:
Como pada poder enviar , tuve que modificar, pues desde entonces he mantenido la modificacion, luego provare a vover atras, total son unas 15/20 lineas de codigo, no mas. Gracias de todos modos, le digo algo, igual hera un fallo de las primeras versiones de codigo.
__________________
Uno se alegra de ser útil. (Isaac Asimov) |
#20
|
||||
|
||||
Cita:
Pues algo han cambiado, porque ahora si funciona, pues nada, maquina aban.... Gracias.
__________________
Uno se alegra de ser útil. (Isaac Asimov) |
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
como leer datos enviados por COM3 ( TurboPower Async Professional.) | Racso2006 | Varios | 18 | 07-11-2018 12:06:58 |
Guardar y Leer fotos directamente a una base de datos sin antes guardar como archivo | rmeckbell | Desarrollo en Delphi para Android | 6 | 26-06-2017 18:24:20 |
Como leer los datos de un UPS | kurono | Varios | 5 | 20-02-2012 09:23:51 |
Cómo puedo leer los datos de este xml!! | bone | Varios | 16 | 23-02-2011 17:29:49 |
![]() |
|