scott84 Inserito: 10 aprile 2013 Segnala Inserito: 10 aprile 2013 Salve sto analizzando un programma step7 per una CPU314IFM. Mi sono accorto che un FB usato (FB14) al suo interno ha dei comportamenti di cui non riesco a capire il motivo: 1) i parametri che gli vengono passati in ingresso quando viene richiamato all'interno di un altro FC, non vengono "mappati" sulle corrispondenti variabili di input interne 2) l' FB ha due blocchi di istanza (DB26 e DB36) : effettuando la "CALL FB14, DB36", mi sono accorto che i parametri STAT all'interno dell'FB corrispondono al quelli del DB26, e non del DB 36, come ci si aspettava Qualcuno sa dirmi se ho trascurato qualcosa? Grazie Davide
scott84 Inserita: 10 aprile 2013 Autore Segnala Inserita: 10 aprile 2013 Può dipendere dal fatto che l'FB è richiamato 2 volte all'interno di un ciclo di CPU con due DB di istanza diversi?
Gabri.cicchi Inserita: 10 aprile 2013 Segnala Inserita: 10 aprile 2013 Sicuramente no, perchè l'istanza è fatta a posta. Prova a postare il codice dove fai i richiami.
batta Inserita: 10 aprile 2013 Segnala Inserita: 10 aprile 2013 Quando una FB è richiamata più volte, devi indicare al sistema a quale DB di istanza deve fare riferimento. Apri l'FB, poi seleziona "Test" --> "Funzionamento" ed imposta "Test" (di default è impostato "Processo"). Poi: "Test" --> "Ambiente di richiamo". Metti la spunta su "Blocchi dati aperti" ed imposta il numero del DB di istanza. Ora fai "Test" --> "Controlla" (oppure click sugli occhialini, o Ctrl + F7, a tuo piacere) e vedrai che tutti i comportamenti (apparentemente) strani sono spariti.
Messaggi consigliati
Crea un account o accedi per commentare
Devi essere un utente per poter lasciare un commento
Crea un account
Registrati per un nuovo account nella nostra comunità. è facile!
Registra un nuovo accountAccedi
Hai già un account? Accedi qui.
Accedi ora