WSCDC tratamiento de errores
Después de llamar a cualquiera de los métodos del WSCDC, aparte de las propiedades específicas en donde se leen los resultados, existen un grupo de propiedades comunes a todos que contienen la lista de errores devueltos por AFIP (si los hubiere) .
En cada llamado al servidor del WSCDC este puede devolver 0, 1 o más errores que se leen en las propiedades (código y descripción):
ccErrorCode1
ccErrorMsg1
Estas propiedades estarán vacias si no hubo errores. Es importante destacar que el WSCDC devuelve una lista de errores variables (que puede contener 0, 1 o más elementos). Las propiedades "ccErrorMsg1" y "ccErrorCode1" solo son provistas por comodidad. La forma correcta es obtener la lista de errores devueltos es:
Consultar el valor de la propiedad "ccErrorItemCantidad". (0 si no hubo errores, 1 o más si la lista contiene elementos).
En caso que ccErrorItemCantidad sea mayor que 0. Cargar "ccIndiceItem" a 0.
Leer en las propiedad "ccErrorMsg" y "ccErrorCode" el primer error devuelto.
Continuar cargando "ccIndiceItem" a 1, 2 hasta "ccErrorItemCantidad-1" y leer cada fila de la lista de errores en las propiedad "ccErrorMsg" y "ccErrorCode".
Es decir que la propiedad "ccErrorMsg1" apunta a la primera fila de la lista de errores (contienen "vacio" si no hubo errores) y son provistas por simplicidad. En caso que "ccErrorItemCantidad" muestre valor "1" (o superior) son equivalentes las propiedades:
mostrar el valor de "ccErrorMsg1"
cargar "ccIndiceItem" a 0.
mostrar el valor de "ccErrorMsg"
Bajo ningún concepto deben confundirse la propiedades "ccErrorMsg1", que referencia a un valor fijo: el primero de la lista de errores si lo hubiere, con la propiedad "ccErrorMsg" que referencia un valor de una lista variable apuntada por "ccIndiceItem" y cuyo límite (cantidad de filas de la lista) está marcado por "ccErrorItemCantidad".