Le forum (ô combien francophone) des utilisateurs de Powerbuilder.
Bonjour, je débute en PB et je voudrais savoir s'il est possible de forcer une imprimante sur le code
ole_cour_reclame_carte.ActiveDocument.Printout(false)
Car ma feuille doit être imprimé obligatoirement sur l'imprimante "x" même si ce n'est pas l'imprimante par défaut.
Comment puis-je passer cela en paramètre.
Cordialement.
Richard
Dernière modification par raubry (19-12-2013 10:44:24)
Hors ligne
Bonjour, regarde du côté de PrintSetPrinter avant de lancer ton impression, voici un exemple d'appel :
long ll_place string ls_setprn string ls_prntrs = PrintGetPrinters ( ) ll_place=pos (ls_prntrs, "~n") mle_1.text = PrintGetPrinters ( ) ls_setprn = Left (ls_prntrs, ll_place - 1) PrintSetPrinter (ls_setprn)
Hors ligne
Ok, je vais regarder je met l'ensemble de mon code ca sera peut être plus compréhensible
//Courrier réclamation carte if cbx_cour_reclame_carte.checked then ole_cour_reclame_carte = create oleobject if Not(ole_cour_reclame_carte.connecttonewobject( "word.application.8") = 0) then if Not(ole_cour_reclame_carte.connecttonewobject( "word.application.10") = 0) then MessageBox("Ole erreur","Connection impossible") goto fin end if end if ls_chemin = ProfileString('c:\winnt\ccpb.ini','Courrier','Lecteur','None') ls_perso_id = string(idc_retour_perso_id) /* Création objet adresse entreprise */ /* autoinstantiate */ ll_ent_id = lnv_cpni_adherent.of_rech_adhr_ent( dec(idc_retour_adhr_ref)) lnv_cpni_personnel.of_rech_perso(ls_perso_id) lnv_cpni_ent_adresse.il_ent_id = ll_ent_id lnv_cpni_ent_adresse.of_rech_ent() lnv_cpni_adherent.of_adherent( long(idc_retour_adhr_id)) lnv_cpni_utilisateur.of_utilisateur( ) ls_doc = ls_chemin + 'CIP\Courrier salarié pour retour carte.doc' ls_benef = lnv_cpni_personnel.is_genre + ' ' ls_benef += lnv_cpni_personnel.is_nom + ' ' ls_benef += lnv_cpni_personnel.is_prenom ole_cour_reclame_carte.Documents.Open(ls_doc) ls_result = ls_benef if IsNull(ls_result) then ls_result = '' end if ole_cour_reclame_carte.ActiveDocument.FormFields[1].Result = ls_result ls_result = lnv_cpni_personnel.is_adr1 if IsNull(ls_result) then ls_result = '' end if ole_cour_reclame_carte.ActiveDocument.FormFields[2].Result = ls_result ls_result = lnv_cpni_personnel.is_adr2 if IsNull(ls_result) then ls_result = '' end if ole_cour_reclame_carte.ActiveDocument.FormFields[3].Result = ls_result ls_result = lnv_cpni_personnel.is_adr3 if IsNull(ls_result) then ls_result = '' end if ole_cour_reclame_carte.ActiveDocument.FormFields[4].Result = ls_result ls_result = lnv_cpni_personnel.is_cp + ' ' + lnv_cpni_personnel.is_ville if IsNull(ls_result) then ls_result = '' end if ole_cour_reclame_carte.ActiveDocument.FormFields[5].Result = ls_result ls_result = lnv_cpni_utilisateur.is_initial if IsNull(ls_result) then ls_result = '' end if ole_cour_reclame_carte.ActiveDocument.FormFields[6].Result = ls_result ls_result = lnv_cpni_personnel.is_genre if IsNull(ls_result) then ls_result = '' end if ole_cour_reclame_carte.ActiveDocument.FormFields[7].Result = ls_result ls_result = lnv_cpni_ent_adresse.is_nom if IsNull(ls_result) then ls_result = '' end if ole_cour_reclame_carte.ActiveDocument.FormFields[8].Result = ls_result ls_result = lnv_cpni_personnel.is_genre if IsNull(ls_result) then ls_result = '' end if ole_cour_reclame_carte.ActiveDocument.FormFields[9].Result = ls_result /* Impression du courrier */ ole_cour_reclame_carte.ActiveDocument.Printout(false) ole_cour_reclame_carte.ActiveDocument.Close(0) ole_cour_reclame_carte.application.quit() ole_cour_reclame_carte.disconnectobject() // fin: destroy ole_cour_reclame_carte end if
Hors ligne
Essaye le code juste avant ton :
ole_cour_reclame_carte.ActiveDocument.Printout(false)
NB :
Hors ligne