jlppap
6th March 2007, 10:28
Bonjour
Baan IV c4 - et windows XP pro
PROBLEME : J'aurai besoin d'envoyer des données ( 480 caractères) directement dans un fichier qui se trouve sur un serveur, sans passer par un report dont la taille maxi est de 255 caractères; j'ai essayé plusieurs fois sans résultat... :mad:
QUESTION...
--Dans le script de ma session Baan, comment faire pour écrire directement dans un fichier en sortie en gardant les paramètres d'accès d'origine du fichier?

Si quelqu'un avait un petit exemple, ce serait sympa.

MERCI d'avance

f.martel
6th March 2007, 11:59
Bonjour,

Voici un exemple d'écriture.

extern domain tcmcs.str132 nom.fichier
domain tcmcs.long num.fichier
domain tcmcs.s999 ligne
domain tcmcs.long ret

|**** purge du fichier

nom.fichier= "/tmp/tarsav.txt"
num.fichier = seq.open (nom.fichier, "w+")

ecriture.fichier()

seq.close(num.fichier)

function ecriture.fichier()
{
|**** Mise en forme

ligne = tiitm001.item(1;8) & ";"
ligne = ligne & edit$(tiitm001.stoc,"99999V.99") & ";"
ligne = ligne & "BlaBlaBla"

|**** Ecriture fichier

seq.puts(ligne, num.fichier)


}

@ plus

François Martel

jlppap
6th March 2007, 16:31
Merci beaucoup,
cela fonctionne très bien...quand le fichier existe.

Par contre, si le fichier n'existe pas, :confused: cela ne fonctionne pas; je n'ai aucun droit !?!

N'auriez-vous pas une solution?

MERCI pour votre aide.

f.martel
7th March 2007, 08:06
Bonjour,

il faut regarder du coté de l'aide de la fonction et autorisé les droits de lecture / écriture pour le ou les utilisateurs.

@ plus

jlppap
7th March 2007, 11:01
Bonjour;
et MERCI pour votre aide

après : num.fichier = seq.open(nom.fichier, "a+")

Il m'a suffit d'ajouter une ligne : file.chmod(nom.fichier,S_IRWXO)
pour UNIX seulement.

Encore merci et bonne semaine.