Nome programma: BSPMIMTS.DLL Moduli richiesti: Project Management Il programma provvede alla importazione di timesheet con relativo aggiornamento commesse (Project Management), a partire da dati forniti da procedura esterna secondo il tracciato record di acquisizione. In particolare il programma provvederà a: - Chiedere in input il percorso (nome file e cartella):
- del file ASCII da acquisire contenente le registrazioni di ore manodopera
- del file di log nel quale registrare le operazioni svolte dal programma durante la acquisizione dati (file di testo, con evidenza dei record scartati con relativa motivazione e dei record trattati)
- del file ASCII dei record errati/non recuperabili (es. per mancanza di dati essenziali come commessa e/o task), in cui saranno inseriti i record del file ASCII da acquisire non recuperabili
- del file ASCII dei record non trattati/recuperabili (es. per sforamento del budget sul task, oppure perché task non ancora rilasciato - tali record sono generalmente recuperabili con modifiche ai dati di commessa da Gestione commesse - ), in cui saranno inseriti i record del file ASCII da acquisire non trattati
- del file ASCII dei record trattati/acquisiti, in cui saranno inseriti i record del file ASCII da acquisire non trattati
- Chiedere in input se si vogliono applicare i controlli sui soli task rilasciati e sul controllo dello sforamento budget sul task
Tracciato per acquisizione (import) da Business di timesheets rilevati in altro sistema Nome file (suggerito): TIMESH.ASC Da | A | Lungh. | Tipo | Descrizione | Obbligatorio | 1 | 9 | 9 | N | Progressivo (può ripartire da 1 ogni volta) | OBBL | 10 | 18 | 9 | N | Identiticativo commessa (cod. commessa) | OBBL | 19 | 27 | 9 | N | Identif. Task/attività all'interno della commessa (alternativo all'uso del campo succ.) | OBBL (salvo indicazione del campo sottostante) | 28 | 31 | 4 | AN | Identif. Alfanumerico del task nella commessa (posizione) (NB: alternativo all'uso del campo precedente) | OBBL (a meno di indicazione del campo soprastante) | 32 | 40 | 9 | N | Cod. conto di Contab. Analitica (utilizzato solo se è gestita la contabilità analitica in Business) | OBBL (solo se gestita la Cont. Analitica) | 41 | 44 | 4 | N | Cod. centro di costo (utilizzato solo se è gestita la contabilità analitica in Business) | OBBL (solo se gestita la Cont. Analitica) | 45 | 45 | 1 | AN | Segno dell'operazione : D=dare/costo (non sono possibili altri segni) | OBBL | 46 | 53 | 8 | N | Numero ore impiegate. Espresse nel formato 9999V9999 (con V=virgola virtuale, secondo le convenzioni COBOL) ; HHHH,MMSS (dove HHHH = ore intere, MM minuti, SS secondi) | | 54 | 61 | 8 | N | Valore costo delle ore impiegate. Espresse nel formato 999999V99 (con V=virgola virtuale, secondo le convenzioni COBOL); valorizzazione ala costo standard orario da utlizzarsi | | 62 | 62 | 1 | AN | Tipo ore manodopera (N=ordinarie, S=straordinario, F=festivi, ecc.) Qualsiasi tipo ore gestito da Business. | OBBL | 63 | 63 | 1 | AN | Saldo task : C= se il lavoro è in conto (il task non è stato completato), S= se il lavoro è stato eseguito ed il task completato, Q= il lavoro è saldato a quantità (possibile solo per task che fanno riferimento ad un preventivo di gruppo) | OBBL | 64 | 71 | 8 | N | (*) Scostamento in ore rispetto alla ore previste. Espresse nel formato 9999V9999 (con V=virgola virtuale, secondo le convenzioni COBOL) ; HHHH,MMSS (dove HHHH = ore intere, MM minuti, SS secondi) (può essere lasciato a zero; in tal caso lo scostamento sarà rilevato da Business in fase di acquisizione dell'ultimo record timesheet per quel task, oppure quando la somma dei lavori supera il tempo previsto sul task) | | 72 | 79 | 8 | N | Data registrazione, nel formato AAAAMMGG | OBBL | 80 | 83 | 4 | N | Cod. risorsa/operaio/impiegato | OBBL | 84 | 89 | 6 | N | Numero documento (anche 0) | | 90 | 344 | 255 | AN | Note | | 345 | 352 | 8 | N | Alternativo all'uso del campo contrassegnato con (*); nel caso di timesheet che non completa il lavoro, indicare qui il tempo stimato (in ore) rimante per il completamento del task. Espresse nel formato 9999V9999 (con V=virgola virtuale, secondo le convenzioni COBOL) ; HHHH,MMSS (dove HHHH = ore intere, MM minuti, SS secondi) | | 353 | 356 | 4 | N | Esercizio di competenza della registrazione (nel formato AAAA) | OBBL | 357 | 360 | 4 | N | Cod .lavorazione | |
I record sono delimitati da LF + CR finali (secondo le convenzioni COBOL dei files LINE SEQUENTIAL), i campi AN (alfanumerici) sono allineati a sinistra con riempimento di spazi a destra mentre i campi N (numerici) sono allineati a destra con riepimento di zeri a sinistra. Elenco degli errori possibili in fase di importazione di timesheet da file ascii Qui di seguito è possibile trovare un elenco delle motivazioni che portano un record da importare ad essere scartato, cioè considerato errato/non recuperabile oppure non trattato/recuperabile, sono le seguenti: - # ERRORI CRITICI: comportano che il record venga inserito fra quelli ERRATI (quindi non recuperabili)
- Err. N°1. Dato non corretto nel file ASCII da acquisire.
- Err. N°2. L'Anno di competenza' deve essere compreso fra 1900 e 2099.
- Err. N°3. La 'Data della registrazione' non è una data valida.
- Err. N°4. Il 'Cod. Risorsa/Operaio/Impiegato' deve essere compreso fra 1 e 9999.
- Err. N°5. Il 'Cod. Risorsa/Operaio/Impiegato' è inesistente.
- Err. N°6. Il 'Conto di C.A.' deve essere compreso fra 1 e 999999999.
- Err. N°7. Il 'Conto di C.A.' è inesistente.
- Err. N°8. Il 'Conto di C.A.' deve avere un tipo gestione per Centro e Commessa.
- Err. N°9. Il 'Centro di C.A.' deve essere compreso fra 1 e 9999.
- Err. N°10. Il 'Centro di C.A.' è inesistente.
- Err. N°12. Il 'Cod. Lavorazione' deve essere compreso fra 0 e 9999.
- Err. N°13. Il 'Cod. Lavorazione' è inesistente.
- Err. N°14. Il 'N° Commessa' deve essere compreso fra 1 e 999999999.
- Err. N°15. Il 'N° Commessa' è inesistente.
- Err. N°17. Il 'N° Documento' deve essere compreso fra 0 e 999999.
- Err. N°18. Il 'N° di ore impiegate' deve essere compreso fra 0 e 9999.
- Err. N°19. Il 'Costo' deve essere compreso fra 0 e 999999.
- Err. N°20. L'Identificativo del Task nella commessa' deve essere compreso fra 1 e 999999999.
- Err. N°21. L'Identificativo del Task nella commessa' è inesistente.
- Err. N°22. La 'Posizione del Task nella commessa' non permette di individuare alcun Task.
- Err. N°23. La 'Posizione del Task nella commessa' non permette di individuare un Task in maniera univoca.
- Err. N°24. L'Identificativo del Task nella commessa' ha un segno Dare/Avere di C.A. non compatibile con la registrazione che si sta effettuando.
- Err. N°25. L'Identificativo del Task nella commessa' è un Task di preventivazione di gruppo. Non ammesso.
- Err. N°26. L'Identificativo del Task nella commessa' è un Task di gruppo. Non ammesso.
- Err. N°27. Si sono verificati dei problemi a caricare sulla tabella temporanea i record di PROESEB correlati al Task indicato.
- Err. N°28. Sul Task si sono verificati dei problemi nella routine LegTaskCompleteDao.
- Err. N°29. L'Identificativo del Task nella commessa' è di un tipo non compatibile con la registrazione che si sta effettuando.
- Err. N°30. L'Identificativo del Task nella commessa' ha una gestione costi non compatibile con la registrazione che si sta effettuando.
- Err. N°31. L'Identificativo del Task nella commessa' è già stato completato (costo residuo = 0). Non è dunque più possibile effettuare registrazioni relative ad esso.
- Err. N°33. La registrazione che si sta effettuando è priva sia della indicazione del 'N° di ore impiegate' sia del 'Costo'. Pertanto non è valida.
- Err. N°34. La registrazione che si sta effettuando indica per il Task agganciato una evasione a quantità. Ciò non è possibile poiché il Task stesso non fa capo ad un preventivo di gruppo.
- Err. N°35. Il 'Conto di C.A.' non può essere gestito a periodo di competenza economica. Caso non gestito da questo programma.
- Err. N°36. La registrazione che si sta effettuando indica per il Task agganciato una evasione in conto. Ciò non è possibile poiché il Task stesso risulta avere un valore rimanente uguale a 0.
- Err. N°37. La registrazione che si sta effettuando indica per il Task agganciato una evasione a saldo. Ciò non è possibile poiché il Task stesso risulta avere un valore rimanente diverso da 0.
- Err. N°38. La registrazione che si sta effettuando indica per il Task agganciato una evasione a saldo per quantità. Ciò non è possibile poiché il Task stesso risulta avere una quantità rimanente diversa da 0.
- Err. N°39. La registrazione che si sta effettuando origina per il Task agganciato una quantità rimanente diversa da 0 ed un costo rimanente uguale a 0. Ciò non è possibile.
- Err. N°40. La registrazione che si sta effettuando indica per il Task agganciato una evasione a saldo per quantità. Ciò non è possibile poiché il Task stesso risulta avere un costo rimanente uguale a 0.
- Err. N°41. La registrazione che si sta effettuando origina per il Task agganciato un costo rimanente minore di 0. Ciò non è possibile.
- Err. N°43. La registrazione che si sta effettuando indica per il Task agganciato, facente capo ad un preventivo di gruppo, una evasione a saldo. Ciò non è possibile poiché esistono altri Task facenti capo allo stesso preventivo di gruppo che non sono ancora chiusi.
- # ERRORI NON CRITICI: comportano che il record venga inserito fra quelli NON TRATTATI (quindi recuperabili)
- Err. N°11. Manca il budget relativo al 'Conto di C.A.' per l'Anno di competenza' indicato.
- Err. N°16. Manca il budget relativo al 'N° Commessa' indicato.
- Err. N°32. L'Identificativo del Task nella commessa' non è stato ancora rilasciato. Non è dunque possibile effettuare registrazioni relative ad esso.
- Err. N°42. La registrazione che si sta effettuando origina per il Task agganciato uno sforamento del costo a budget. Ciò non è possibile.
|