



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 :)