Bonjour All,

Je dois faire un script KSH que je dois rentre demain mais j'ai été super malade (calculs rénaux) pendant 1 semaine et je n'ai pas pu travailler dessus. Le gros problème est que je ne connais rien à shell. Donc je demande à l'aide au prêt de vous :

Voila mon devoir :

Un nouveau script sera mis en place afin d’insérer de façon automatique des instructions « sql » dans la table de numérotation : REF_TEL.

Ce script prendra en entrée en argument :
o Une date :
• Cette date correspondra au champ « mindate ».
• Cette date devra être au format [DD/MM/YYYY HH24:MI:SS].

o Un fichier texte :
• Ce fichier contiendra les occurrences du champ « prefix » à insérer dans la table.
• Ce fichier sera au format «.txt » et devra contenir une ligne par instruction.

o Un fichier CSV :
• Ce fichier ne comportera qu’une seule ligne ; il aura pour rôle de fournir les occurrences par défaut à insérer dans la table en complément des champs « prefix » fournis dans le fichier texte c'est-à-dire tous les champs autres que « maxdate », « datemodif » (cf. remarques et limitations) et « mindate », « prefix » (cf. points précédents).
• Ce fichier devra être au format « csv » (occurrences séparées par un point-virgule « ; ») ; l’ordre d’apparition des champs dans ce fichier devra respecter celui de la table.


Le script construira les instructions SQL qu’il stockera dans un fichier tiers (fichier texte). Ce fichier permettra de vérifier les instructions en cas d’erreur. Le script lancera ensuite les instructions :
o Si tout ce passe bien, il y aura un message indiquant la fin correcte du traitement.
o Si il y a une erreur, un roll back sera appliqué sur les instructions déjà passées et le traitement remontera un message d’erreur. En aucun cas l’application ne pourra aiguiller sur l’insertion qui est en erreur. La seule solution sera de vérifier manuellement le fichier texte comportant les instructions.

Remarques et limitations :
o Les champs « maxdate » et «datemodif » seront alimentés de la manière suivante :
• « maxdate » : si ce champ n’est pas renseignée dans le fichier « csv », le champ correspondant dans la table prendra la valeur « 31/12/2999 23:59:59 ». Si une valeur spécifique doit être indiquée, celle-ci pourra l’être dans le fichier « csv »et devra être au format [DD/MM/YYYY HH24:MI:SS]. Cette date sera commune à tous les préfixes chargés dans le fichier texte correspondant.
• «datemodif » : ce champ prendra par défaut la date du serveur au moment de l’insertion. Si une valeur spécifique doit être indiquée, celle-ci pourra l’être dans le fichier « csv »et devra être au format [DD/MM/YYYY HH24:MI:SS]. Cette date sera commune à tous les préfixes chargés dans le fichier texte correspondant.
Voila, j'ai cherché dans pas mal de documentation mais j'ai pas trouver grand chose.
Je post cette demande au dernier moment car je voulais essayer de le faire par moi même mais le temps m'a manqué.

J'espere que quelqu'un pourra m'aider.

Merci d'avance

Amicalement,
Diablotin