Quan n'aprendran?

Aquesta setmana passada, un consultor extern que ens està ajudant a implementar una nova funcionalitat al nostre ERP em deia que per a generar un fitxer amb dades d'un inventari, el qual ha de ser per nassos de text amb columnes de mida fixa, ho podria fer amb una base de dades Access i que fent nosequè i nosequèmés me'n sortiria. Em reservo el que em va venir el cap, donat que el consultor en concret és molt eficient i assumeixo que ho va dir de molt bona fe.

O sigui, que per poder generar un fitxer que tingui el format que ens cal per carregar-ho després de manera massiva, em cal tenir un sistema operatiu en concret, amb un programa en concret, que és un gestor de "bases de dades"(sic)!

Vaig agafar aire repetides vegades, i al cap de vint minutets ja havia averiguat com fer-ho en dues línies de l'intérpret d'ordres:

Tenim un fitxer original en format xls (sí, ho sé, penitentia agite, però això encara no ho he pogut solucionar, és un tema complex en aquest cas...) i l'hem d'arribar a carregar en un procés automatitzat amb uns requisits de format molt estrictes (sinó falla tota la càrrega de dades i em ve a sobre un regiment de cosacs al galop).

Convertim el fitxer d'xls a csv:

ssconvert fitxer.xls fitxer.csv

Ara convertim el fitxer que originàriament era un xls, que s'ha convertit en una sèrie registres de camps delimitats per comes, a un fitxer de registres de camps de text de mida fixa:

awk -F, '{printf("%12-s%20-s%2-s%4-s%16-s%8-s%8-s%33-s%4-s%14-s%17-s%11-s%18-s%83-s\n", $1, $2, $3, $4, $5, $6, $7, $8, $9, $10, $11, $12, $13, $14)}' fitxer.csv > fitxerPerImportar

Evidentment, podem aplicar lògica i control d'errors a tot plegat i automatizar-ho amb un script bash, python o el que sigui, però les ordres són aquestes.

Qui havia dit "Access"?? :D

Comentaris

Accés, no Access

Em sembla que el que tu has aconseguit és poder tenir accés a les dades; cosa bastant diferent de fer-ho amb Access ;)

Probablement

sigui aixi. Molts cops, els programes que pagues (cars, immensos, complicats) per a gestionar les teves dades, te les segresten; i no ho dic pas de broma.

El problema real és la pasta

La qüestió de formats pot arribar a ser secundària. El problema gros és que, ja sia per ignorància o per mala fe, fan que un problema molt simple esdevingui una cosa obscura, de solució molt complicada, i que per tant et cobraran molts euros per implementar-ho. I com que la majoria de la gent no en té ni idea d'informàtica, doncs la cosa cola en un alt percentatge de vegades.

A vegades penso (vaja, n'estic convençut) que el programari privatiu està mancat d'una sèrie de funcions precisament perquè la solució a molts problemes trivials passi per programes amb interfícies gràfiques, que són més cars de desenvolupar i produeixen més beneficis a les empreses desenvolupadores.

Està clar

De fet, m'he oblidat de comentar que també m'havien ofert una alternativa que podien desenvolupar ells en "dues jornades de programació" (això van dir). Ergo: uns 800-1000 €

Però...

Colta...però aixó no ho fa ja el openoffice-calc...obres el fitxer .xls i fas anomena i desa en .csv... !!!!

Sí, clar...

però això és un procés 'automàgic' entre màquines, sense intervenció humana, repetit un i altre cop i amb tot un flux de treball pel mig. No una exportació puntual d'un fitxer a nivell d'escriptori. És una altra història, tot i que el formatat és el mateix :)