Ecrire sur DB déja Existant
-
le 10/02/2017 à 09:31 Citer ce message
Bonjour a tous :)
voilà j'ai un programme sur un automate S1200 en langage a contact, et j'aimerais ajouter quelque entrées , donc j'aimerais savoir comment je pourrais pointes mes informations sur un DB déja existant , :)
Merci d'avance -
le 10/02/2017 à 10:30 Citer ce message
Bonjour,
Ce que vous voulez faire n'est pas très clair.
Vous parlez bien d'Entrées Tout ou Rien?
Sur votre CPU 1200, avez-vous des entrées de libre pour en rajouter ou allez-vous rajouter une carte?
Ensuite, quel rapport avec un DB? Comment est fait votre programme aujourd'hui? Vos entrées sont recopiées dans un DB? -
le 10/02/2017 à 10:53 Citer ce message
Merci Jerome pour votre réponse ;
alors je m'explique, c'est une entrée ANA donc j'ai un DB ANA aussi et j'aimerais l'enregistré sur celui qui existe pour la sauvegardé et oui mes entrées sont recopiées dans le DB ANA pour les afficher sur un Panel !
merci :) -
le 10/02/2017 à 11:17 Citer ce message
D'accord.
Le DB ANA est une copie directe de l'Entrée ANA ou y-a-t-il une conversion/mise à l'échelle entre les 2?
En gros aujourd'hui vous avez à peu près ceci :
DB_ANA.Entree_Ana1 = IW500
DB_ANA.Entree_Ana2 = IW502
DB_ANA.Entree_Ana3 = IW504
Pour faire de même avec une nouvelle entrée ANA, ex IW506, vous devez déclarer cette entrée sur votre carte (existante ou nouvelle) avec son type (tension, courant, etc).
Dans votre DB, rajouter une nouvelle variable DB_ANA.Entree_Ana4.
Puis quelque part dans le programme (dans un FC ou FB) faire le lien entre la nouvelle entrée IW506 et la nouvelle variable DB_ANA.Entree_Ana4 du même type que les variables déjà existantes (Int, Word, Real, ...), de la même manière que cela est fait pour les entrées déjà existante (copie directe ou mise à l'échelle).
En chargeant le programme le DB sera chargé dans l'automate avec la nouvelle variable. -
le 10/02/2017 à 11:22 Citer ce message
oui y'a une conversion et une mise a l'echelle dans un FC ! puis quand j'essaye de la rajouté dans le DB, cela entraîne un décalage des autres variable déjà existante ! donc j'aimerais savoir si y'a un moyen de l'affecté automatiquement a ce DB sans pour autant en décalé les autres :)
merci jerome -
le 10/02/2017 à 11:25 Citer ce message
Le plus simple est de rajouter toute nouvelle variable tout en bas du DB ainsi il ni aura pas de décalage. -
le 10/02/2017 à 11:35 Citer ce message
justement c'est ce que je fais et y'a le décalage ! c'est ça que je comprend pas !!!! comment l'ajouté sans ce décalage ? -
le 10/02/2017 à 13:33 Citer ce message
Pouvez-vous indiquer exactement comment vous procédez pour rajouter la variable dans le DB?
Le DB est classique ou optimisé?
Vous faites insérer ligne ou ajouter ligne? Pour rajouter tout en bas, c'est Ajouter qu'il faut faire.
Quoi qu'il en soit, si vous mettez la variable tout en bas du DB, vous ne décalez rien d'autre. -
le 11/02/2017 à 11:22 Citer ce message
Bonjour, pour la rajout, je vais le de DB ANA et tt en bas, je met AJOUTER, et là y'a le décalage qui se réinitialise ! c'est DB GLOBAL non optimisé , il faudra le faire je pense ! j’essayerais !
merci jerome :) -
le 15/02/2017 à 19:15 Citer ce message
Oui comme c'est un DB non optimisé, quand on ajoute une variable, même tout en bas, les numéros de décalage disparaissent.
Après Compilation, le numéros de décalages se remettent en place.
Si entre le DB d'origine, et le DB une fois la nouvelle variable ajoutée tout en bas il n'y a pas eu d'autre insertion, il ni a pas de logique à ce que des variables en plein milieu voient leur numéro de décalage bouger.
Il faudrait, des copies d'écran avant/après pour y voir plus clair.
Répondre à ce message