[WinCC] lancer travail d'impression par clic

Résolu/Fermé
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 - 15 mai 2008 à 14:19
 darren's - 13 août 2015 à 16:53
Salut a tous

Voila je realise de la supervision sous winCC et je souhaite utilisé la base de données qui est dans winCC
J'arrive à exploiter la base, j'ai eu du mal mais maintenant c'est bon
le truc c'est que pour imprimer il faut d'un coté configurer la mise en page et de l'autre coté configurer le travail d'impression
ma mise en page est faite elle et réglé pour ce remplir en dynamique avec les valeurs des variables et les tables de ma supervision
le truc c'est que pour voir le resultat et pour imprimé je peut passer que par travail d'impression
c'est dommage parceque j'arrive a lancé la mise en page a partir d'un bouton
en faite il faut dire le nom de l'appli et le parametre c'est a dire le fichier a ouvirir
et ce qui est vraiment dommage c'est que j'arrive pas a lancer le travail d'impression alors que c'est presque pareil

voila j'espere avoir ete clair et ke quelqu'un pourra venir a mon secour

merci d'avance a+
A voir également:

15 réponses

je comprend et je te remerci...

plein de souci sous wincc et wincc flex!
projet:
1 poste en wincc qui fait de la visu , gestion de recettes et impression de rapport (courbes, une vue specufique et je pense un rapport que je dois mettre en page moi.
2 postes MP370 en winccflex pour pilotage machine.

je dois creer les recettes sur le SCADA et les diffuser sur les 2 MP370

wincc:
- j'arrive a lancer des travaux d'impression mais j'ai juste les pages avec l'entete qui s'affiche.
- je 'arrive pas a imprimer une copie d'un ecran via un bouton sur une autre vue (ex: je suis sur la vue "gestion rapport" et je veut imprimer la vue "donnée actuelle")
- creation et gestion de recette au format CSV ok, j'aimerais faire un export automatique lorsque je quitte la vue... (pas encore fait)
- j'ai creer un petit fichier copy.bat pour pouvoir copier le fichier csv sur les 2 MP, mais impossible de le lancer via wincc le fichier . bat qui fonctionne bien en lcliquant dessus.

wincc flex:
- je dois recuperer le fichier csv creer par le scada et l'utiliser pour choisir une recette et copier toutes les valeur de la ligne correspondante a l'automate! le probleme c'est que je ne peut pas utiliser le gestionnaire de recette de wincc flex, car en flex les recettes sont en colonnes et en scada les recettes sont en lignes...
il faudrait faire une liste deroulante qui se met a jour automatiquement en fonction des 2 premieres colonnes du fichiers et en selectionnant une ligne, importer toutes les colonnes de la ligne!


je me casse pas mal la tete la dessus.
je te remerci de ton aide...
julien hartmann
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209
28 oct. 2008 à 12:55
salut

"creation et gestion de recette au format CSV ok, j'aimerais faire un export automatique lorsque je quitte la vue... (pas encore fait) "

comment tu quitte la vue?

comment tu fai ta copie d'écran et comment l'affiche tu dans ta mise en page de ton travail d'impression?

Pourquoi tu passe par excel si ta un automate tu peut réservé des variables (DB je pense) pour la recette?

pour ton fichier bat t'essaye de le lancer comment?

pour winnc flex je connais moins mé on verra
0
slt je voulais la syntaxe pour lancer le travail d'impression avec vbscript mais j'arrive a le faire avec C et voici la syntaxe rptjobpreview
0
merci flo,

pour le fait exporter automatiquement ce n'est pas primordial...
mais je quitte la vue en changeant de vue par exemple.... mais je peut le faire via un bouton specifique ca ce n'est pas mon plus gros souci!

comment tu fai ta copie d'écran et comment l'affiche tu dans ta mise en page de ton travail d'impression?
ben justement c'est la ma question... j'ai voulu utilisé ta methode RPTjobprint(" ") mais utilsé une fonction standard chez eux qui est @screencopie ou qqchse comme ca, mais peut etre il faut que je la configure???
comment faire?


Pourquoi tu passe par excel si ta un automate tu peut réservé des variables (DB je pense) pour la recette?

avec l'automate je vais utiliser la recette en cours dans un DB (environ 50 valeurs differentes)
mais le but du fichier est de pouvoir modifier et creer differentes recettes.
une pour chaque type de fonctionnement sera selectionné dans le flex et les valeurs seront donc envoyé a l'automate dans le DB a ce moment.

pour ton fichier bat t'essaye de le lancer comment?
j'ai essaye de le lancé avec programexecute


pour winnc flex je connais moins mé on verra

merci
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209
29 oct. 2008 à 09:50
Salut
excuse de pas repondre plus souvne tmais je bosse en meme temp

On commence par le debut

voila comment je vois la chose pour l'impression d'écran

Tu crée une image dans ton projet WinCC dans le dossier Gracs en .bmp
Tu insert dans ta mise en page un objet OLE
la création de cette objet OLE tu séléctionne crée à partir d'un fichier et tu prend le fichier que tu viens de crée

Mon idée c'est de réaliser l'impression d'écran et de l'enregister dans ce fichier.bmp quand tu appuis sur le bouton et ensuite de lancer le travail d'impression.

Dit moi si c pas clair
0
ok je vais essayer de faire cela..;
j'aurais cru que ct plus simple que cela.

ne te bill pas pour la rapidité de tes reponses.
moi aussi je bosse!

a +
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209
30 oct. 2008 à 08:15
oubli ca marche pas wincc ne rafraichi pas l'image une fois qu'elle est dans la mise en page elle ne se rafraichi pas
même si on la modifi apres je v chercher autre chose
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209
30 oct. 2008 à 08:52
Bon pour l'instant je trouve pas d'idée mieu si tu trouve le moyen de rafraichir l'image ca peut etre bon je v passer a excel mais crois pas que je lache l'affaire pour l'impression d'ecran


Pour voir si g bien compris

tu doit choisir la recette avec winCC-Flex et ensuite par rapport a ce choix mettre les bonne valeurs de excel dans les DB pour que l'automate gère

Voila comment je ferais: la solution que je te propose je la gère c pas a taton comme l'impression d'écran

->tu te fais un fichier excel qui s'ouvre dés l'ouverture de winCC avec une recette par colonne
->dans ton automate tu te prevois autant de variables booléène que ta de recettes
->dans winCC flex tu te fais un bouton par recette qui met à 1 le bit correspondant a cette recette et tous les autres a 0

di moi si c pas clair

->dans winCC tu te fais un script globale en VB par recette qui se lance quand la variables corresponandant a la recette change
dans ces script tu test si le bit est à un et ensuite tu va chercher les valeurs dans excel et tu les mets dans le DB correspondant

je te donnerais le code apres
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209
30 oct. 2008 à 09:08
tien mon code


Option Explicit
Function action

'declaration des variables utilisées
Dim ExcelSheet

Dim recette1 'pour la recette 1
Dim var1 'les valeures de ta recette
Dim var2
Dim var3
'correspondance des variables avec les variables WinCC
Set recette1 = HMIRuntime.Tags("RECETTE_1") 'le nom de ta variable recette 1 dans wincc
Set var1 = HMIRuntime.Tags("VAR1") 'le nom des variables recette dans wincc
Set var2 = HMIRuntime.Tags("VAR2") 'c'est les variables dans le DB recettes
Set var3 = HMIRuntime.Tags("VAR3") 'Qui sont utiliser par l'automate

recette1.Read

'test si demande de demarrage
If recette.Value =1 Then
'si oui
Set ExcelSheet = GetObject("C:\.........\recette.xls") 'declarer l'application à utiliser ||||| c'est ta feuille excel qui est lancer
var1=ExcelSheet.ActiveSheet.Cells(1,1).Value 'ligne 1 colonne 1 tu met la valeur dans la cellule L1C1 dans var 1
ExcelSheet.ActiveSheet.Cells(2,1).Value 'ligne 2 colonne 1 tu met la valeur dans la cellule L2C1 dans var 2
ExcelSheet.ActiveSheet.Cells(3,1).Value 'ligne 3 colonne 1 tu met la valeur dans la cellule L3C1 dans var 3
Set ExcelSheet = Nothing 'liberation de l'espace memoire reserveé pour l'objet Excel

var1.Write
var2.Write
var3.Write

End If

Set recette1 = Nothing 'liberation de l'espace memoire reserveé pour recette1
Set var1 = Nothing 'liberation de l'espace memoire reserveé pour var1
Set var2 = Nothing 'liberation de l'espace memoire reserveé pour var2
Set var3 = Nothing 'liberation de l'espace memoire reserveé pour var3

End Function
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209
30 oct. 2008 à 09:10
marque moi ton code pour le fichier bat voir si tu met bien tou ce qu'il faut
0
merci pour tes conseils...
pour l'impression d'ecran je n'ai pas encore essayé , je m'etais penché sur winccflex et ca aporte ces fruits...

en fait j'utilise le gestionnaire de recette de wincc, on peut exporter au format csv...
et dans le wincc flex, j'utilise le fichier csv que j'ouvre via un script et je recherche ligne par ligne toutes mes recettes soit par defilement BP next previous, soit par une fonction de recherche que j'ai creer.
lorsque je suis a la bonne ligne, je copie toute mes valeurs de cette recette dans mon automate.

il me reste a faire sous wincc le programexecute(d:\copy.bat) qui ne fonctionne pas, apparement programexecute ne fonctionne que avec un .exe!!!
dommage
le fichier bat par lui meme fonctionne tres bien!
reste plus qu'a le faire executer par wincc.
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209
18 nov. 2008 à 14:56
salut desolé j'ai pas eu le temps de revenir depuis la derniere fois

essaye plutot ca programexecute(d:\\copy.bat);
0
sapeur38 > fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021
18 nov. 2008 à 15:55
oui je vais essayer cela..
merci c'est un des derniers points qu'il me reste a faire...
je vais essayer rapidement...

merci
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209
19 nov. 2008 à 10:43
salut

comment tu as fait pour ton impression d'ecran?
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209
19 nov. 2008 à 12:00
si tu veux j'ai trouvé comment faire l'impression d'écran mais il y a deux trois truc

tu veux imprimer tous l'ecran ou une partie

la condition c'est d'avoir le bouton sur la meme page que tu veux copier

si ca t'interresse toujours
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209
19 nov. 2008 à 12:51
ca marche ton fichier copy.bat parsque il y a peu etre une autre solution
0
pas eu le temps de l'essayer encore...
donne ton autre solution au cas ou?
0
sapeur38 > sapeur38
19 nov. 2008 à 13:06
et j'ai laisser tomber l'impression d'ecran...
j'ai creer un fichier d'impression avec les variables necessaires...
merci

pour ce qui est de la recette...
j'ai utilisé le gestionnaire de recette integrer a wincc, et en fait c dans wincc flex que je l'ouvre et que je fais de la lecture ligne par ligne pour recuperer les bonnes variables!

via un script en vb...
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209 > sapeur38
19 nov. 2008 à 13:47
dommage pour l'impression d'ecran c t pas dur

ton code que tu execute dans copy.bat il marche dans cmd.exe "invite de commande" ? (il i a des chances)
si oui tu lance l'invite de commande a partir de wincc et tu met en commentaire a cote le code de ton fichier .bat

ou encore autre chose

tu ouvre cmd.exe pour essayer tu glisse ton fichier copy.bat dans cmd.exe ca va te donner une destination et si tu fait entrer tu execute ton fichier copy.bat donc ce que tu aura a faire c'est copier cette destination en parametre de

Programexecute("C:\\i386\\cmd.exe" "C:\\copy.bat \/n")
ou quelque chose dans le genre
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209 > fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021
19 nov. 2008 à 13:58
il est ou le gestionnaire de recette dans wincc?
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209 > fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021
19 nov. 2008 à 13:58
il est ou le gestionnaire de recette dans wincc?
0
Bonjour

mon problème est le suivant

je n'arrive pas a imprimer le non du trend que j'imprime, je m'explique,

j'utilise online trend control (wincc v6.4) jusque la ok

je le paramettre j'ai toute mes information afficher a l'écrant sauf le non du trend, il met les 3 premier caratère puis ... au niveau du label de l'axe des Y.

donc j'ai deux possibilité qui s'offre a moi 1 trouver une solution pour permettre d'affichier tous le texte du label
2 trouver une solution pour définir dans ma page report disigner le non de la courbe que je souhaîte imprimer.

si quelqu'un avait la moindre information qui me permettrais de réaliser cette affichage,

merci de la partager avec moi et tous les autre.
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209
2 déc. 2008 à 14:15
salut

tu le met dans quoi ton online trend control dans graphic designer ou dans mise en page de report designer
comment tu imprime
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209
2 déc. 2008 à 14:28
c'est quoi c'est une ou plusieurs courbe que tu veut ?
c'est quoi que t'appelle
sauf le non du trend, il met les 3 premier caratère puis ... au niveau du label de l'axe des Y.
le nom du trend c'est quoi parsque moi je l'utilise et ca marche bien
0
Exusez moi SVP
j'ai un probleme . Je travail sur Wincc depuis quelques temps seulement.Alors pour un projet ,je souhaite afficher dans une vue existente une serie de textes statiques portant le numeros de reference des appareils present sur la vue et pour ne pas saturer ma vue ,je voudrai à partir d'un clic sur un bouton, que j'ai creer,afficher ou masquer les champs de txte statique.
je ne sais vraiment pas comment faire. si quelqu'un as une idée ,merci de m'aider.
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209 > sylva
5 mars 2009 à 11:29
salut

si c'est pour afficher ou masquer tous les textes c'est pas dur

dans ton bouton

tu dois tester un bit que tu creer juste pour ca

tu test ton bit
si il est egale a 1 tu le met a 0
si il est egale a 0 tu le met a 1

et c'est tous pour le bouton

dans les propriété de tes textes statiques dans "autres" "affichages" tu met sur variable et tu met ta variable booléene que ta cree
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209
15 mai 2008 à 14:25
OK
En fait j'ai posté le msg 1 min trop tot
j'ai reussi

il y a une fonction C intégré à WinCC je m'en suis rappelé apres qu'il y en avait qui existait

je vous donne mon code
si quelqu'un a besoin dans le futur


Ca c'est ce qui marche
RPTJobPrint("travail_impression_pv"); //"travail_impression_pv" c'est le nom de mon travail d'impression

ca c'est ce qui ne marchait pas
ProgramExecute("C:\\Program Files\\SIEMENS\\WinCC\\bin\\PrintIt.exe travail_impression_pv");

si quelqu'un à des problème sur wincc qu'il n'hesite pas

merci quand meme
a+
-1
salut flo...
j'ai effectivement plein de souci avec wincc...
ton aide serait d'un grand secours...
peut etre pourrait tu m'appeler...
0688691832
0
fl0 Messages postés 357 Date d'inscription lundi 5 mars 2007 Statut Membre Dernière intervention 10 novembre 2021 209 > sapeur38
27 oct. 2008 à 16:40
post ton probleme je peut surement taider
désolé mais je prefere pas téléphoner
mais explique ton problème je ferai toiu ce ke je peu pour t'aider
0
slt
ta syntaxe rptjobpreview("travail d'impression") marche bien en C mais j'aimerai le faire plutot en vb
0