Cómo verificar cuántos campos de la CDF hay en un informe de la CDF

Los informes de fuente de datos del cliente contienen varios campos de datos, delimitados con caracteres ASCII que normalmente no son visibles en pantalla. Este artículo describirá cómo determinar el número de campos que contiene su informe. Para ver qué campos están disponibles en el informe, visite https://marketing.adobe.com/resources/help/en_US/aam/c_cdf_fields.html

En los informes se utilizan los siguientes delimitadores:

  • Para la separación de campos, el carácter ASCII corresponde al código 01. Esto se conoce generalmente como SOH (inicio del encabezado).
  • Para la separación de matrices, el carácter ASCII corresponde al código 02. Esto se conoce generalmente como STX (inicio del texto).
  • Para diccionarios:
    • La separación clave/valor será el carácter ASCII correspondiente al código 03. Por lo general, esto se conoce como ETX (fin del texto).
    • La separación de los elementos será la misma que para los conjuntos (02). Estos caracteres separadores son muy poco frecuentes en los datos brutos, por lo que no hay riesgo de que se mezclen los datos.
Hay dos maneras conocidas de ver los delimitadores, usando una terminal Unix/Linux, o la interfaz de línea de comandos Cygwin en Windows. Con delimitadores visibles, puede contarlos y determinar el número de campos, incluso si los campos están vacíos.
 
 
1- Uso del comando "traducir" ("tr"): traduce el código ASCII 01 (separación de campos, SOH) a "|" 
 
$ zcat /path/to/dir/AAM_CDF_1234_000001_0.gz | head -5 | tr '\001' '|' | tr '\002' ',' | tr '\003' ':'2013-10-01 
 
18:11:09|00042314524877950034124736683724775790|1083|318722|32619|\N|http://www.acmeflights.com/?cs:e=m&cs:q=&cs:m=&cs:cid=&seg=dap&cs:tv=449&cs:a=pb_retention_search&cs:pro=cpb&cs:ki=581078065|199.30.25.942013-10-01 17:48:52|00067720900173020484560039672852520207|684|64766|\N|d_cb:demdexDestCallback1380649775741,d_dst:1,d_px:19400,d_ld:vin_crm%3D5138.1380649775159.4959%26containerid%3D684%26_ts%3D1380649775741,d_rtbd:json,d_cts:1|http://www.acmemotors.com/|165.234.104.462013-10-01 17:48:52|00067720900173020484560039672852520207|684|64675|32619,20406,20407,2246,20396|d_cb:demdexDestCallback1380649775740,d_dst:1,d_px:19315,d_ld:containerid%3D684%26_ts%3D1380649775740,d_rtbd:json,d_cts:1|http://www.acmemotors.com/|165.234.104.462013-10-01 17:49:14|00067720900173020484560039672852520207|684|64766|\N|d_cb:demdexDestCallback1380649797960,d_dst:1,d_px:19400,d_ld:vin_crm%3D5138.1380649775159.4959%26containerid%3D684%26_ts%3D1380649797960,d_rtbd:json,d_cts:1|http://www.acmemotors.com/inventory/newsearch/Used/|165.234.104.462013-10-01 17:49:14|00067720900173020484560039672852520207|684|64675|32619,20406,20407,2246,20396|d_cb:demdexDestCallback1380649797957,d_dst:1,d_px:19315,d_ld:containerid%3D684%26_ts%3D1380649797957,d_rtbd:json,d_cts:1|http://www.acmemotors.com/inventory/newsearch/Used/|165.234.104.46
 
 
2- Uso del comando "less": una captura de pantalla de Cygwin, en un ordenador con Windows, viendo una línea de datos
El símbolo "^A" indica la ubicación del separador de campos
 
$ zcat /path/to/dir/AAM_CDF_1234_000001_0.gz | head -1 | less
Capture