Bonsoir
A tester
A+
[Résolu] Gestion de composants électroniques
Modérateur : Vilains modOOs
-
- GourOOu
- Messages : 5622
- Inscription : 25 nov. 2011 18:07
- Localisation : Guyane
Re: [Base] Gestion de composants électroniques
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
-
- Membre lOOyal
- Messages : 38
- Inscription : 04 nov. 2016 07:24
Re: [Base] Gestion de composants électroniques
Ta solution, pour à partir du formulaire F_R_RECHERCHE_BOITE_CASIER, ouvrir le formulaire F_COMPOSANT pointant sur le bon enregistrement fonctionne parfaitement.
Je peux, donc , modifier ou visualiser à loisir un composant directement sans repasser par le formulaire F_ACCUEIL
J'ai appliqué ta solution avec réussite pour les formulaires:
F_R_LISTE_COMPOSANT
F_R_RECHERCHE_BOITE
F_R_RECHERCHE_CASIER
PREALABLE
Pour les trois formulaires, ci-dessus, j'ai ajouté soit à la requête SQL ou soit à SQL le champ id_composant. identifiant indispensable pour pointer sur le bon enregistrement
PROBLEME
Mais, j'ai deux problèmes avec F_R_RECHERCHE_TYPECOMPOSANT
Le premier problème: l'ensemble des composants ne s'affiche plus en intégralité dans MainForm_GridTypeComposant
Le second problème: une erreur macro
Sub OuvrirComposant(oEv as Object)
Dim oForm as Object, oFormComp as Object
Dim IdentComp as Long, NomForm as String
oForm = oEv.Source.Model.Parent
IdentComp = oForm.Columns.getByName("id_composant").getInt
NomForm = oEv.Source.Model.Tag
oFormComp = OuvrirFormulaire(nomForm)
With oFormComp.drawpage.forms.getbyname(nomForm)
.Filter="""id_composant"" =" & IdentComp
.Applyfilter = True
.reload
End With
End Sub
INFO
Dans Electronique04012017 j'ai laissé l'ancien formulaire F_R_RECHERCHE_TYPECOMPOSANT_ANCIEN
Cordialement
Alain
Je peux, donc , modifier ou visualiser à loisir un composant directement sans repasser par le formulaire F_ACCUEIL
J'ai appliqué ta solution avec réussite pour les formulaires:
F_R_LISTE_COMPOSANT
F_R_RECHERCHE_BOITE
F_R_RECHERCHE_CASIER
PREALABLE
Pour les trois formulaires, ci-dessus, j'ai ajouté soit à la requête SQL ou soit à SQL le champ id_composant. identifiant indispensable pour pointer sur le bon enregistrement
PROBLEME
Mais, j'ai deux problèmes avec F_R_RECHERCHE_TYPECOMPOSANT
Le premier problème: l'ensemble des composants ne s'affiche plus en intégralité dans MainForm_GridTypeComposant
Le second problème: une erreur macro
Sub OuvrirComposant(oEv as Object)
Dim oForm as Object, oFormComp as Object
Dim IdentComp as Long, NomForm as String
oForm = oEv.Source.Model.Parent
IdentComp = oForm.Columns.getByName("id_composant").getInt
NomForm = oEv.Source.Model.Tag
oFormComp = OuvrirFormulaire(nomForm)
With oFormComp.drawpage.forms.getbyname(nomForm)
.Filter="""id_composant"" =" & IdentComp
.Applyfilter = True
.reload
End With
End Sub
INFO
Dans Electronique04012017 j'ai laissé l'ancien formulaire F_R_RECHERCHE_TYPECOMPOSANT_ANCIEN
Cordialement
Alain
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibreOffice 5.1.6.2 sous Windows 10
-
- GourOOu
- Messages : 5622
- Inscription : 25 nov. 2011 18:07
- Localisation : Guyane
Re: [Base] Gestion de composants électroniques
Bonjour
A tester
A+
A tester
A+
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
-
- Membre lOOyal
- Messages : 38
- Inscription : 04 nov. 2016 07:24
Re: [Base] Gestion de composants électroniques
Bonjour PIAF
Comme d'habitude Parfait
CONTEXTE
J'ai actuellement 3XX "composants" dans la base
Il est possible à partir des formulaires F-R-LISTE-COMPOSANTS, F_R_RECHERCHE_TYPECOMPOSANT, et F_R_RECHERCHE_BOITE_CASIER d'afficher la liste des composants
PROBLEME
Si j'utilise l'ascenseur "1" (Voir schéma ci-dessous) pour parcourir la liste des enregistrements, il n'apparait qu'une portion de celle-ci.
Si je clique "2" dernier enregistrement alors apparait l'ensemble des composants.
Tu remarqueras que dans l'ascenseur, la taille du "pointeur" (Cercle vert) est proportionnelle au nombre d'enregistrements.
BESOIN
Est-il possible d'afficher l'ensemble des enregistrements sans passer par "2" dernier enregistrement ?
Tout petit problème, pas de solution ça n'est pas grave
Bon dimanche
Alain
Comme d'habitude Parfait
CONTEXTE
J'ai actuellement 3XX "composants" dans la base
Il est possible à partir des formulaires F-R-LISTE-COMPOSANTS, F_R_RECHERCHE_TYPECOMPOSANT, et F_R_RECHERCHE_BOITE_CASIER d'afficher la liste des composants
PROBLEME
Si j'utilise l'ascenseur "1" (Voir schéma ci-dessous) pour parcourir la liste des enregistrements, il n'apparait qu'une portion de celle-ci.
Si je clique "2" dernier enregistrement alors apparait l'ensemble des composants.
Tu remarqueras que dans l'ascenseur, la taille du "pointeur" (Cercle vert) est proportionnelle au nombre d'enregistrements.
BESOIN
Est-il possible d'afficher l'ensemble des enregistrements sans passer par "2" dernier enregistrement ?
Tout petit problème, pas de solution ça n'est pas grave
Bon dimanche
Alain
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibreOffice 5.1.6.2 sous Windows 10
-
- GourOOu
- Messages : 5622
- Inscription : 25 nov. 2011 18:07
- Localisation : Guyane
Re: [Base] Gestion de composants électroniques
Bonjour
Voir [Résolu] Formulaire - Etoile numérotation enregistrements.
Dans ton cas, pour le formulaire F_R_LISTE_COMPOSANTS par exemple, ajouter cette macroà l'événement Lors du chargement du formulaire
A+
Voir [Résolu] Formulaire - Etoile numérotation enregistrements.
Dans ton cas, pour le formulaire F_R_LISTE_COMPOSANTS par exemple, ajouter cette macro
Code : Tout sélectionner
Sub AfficherNbrComp
Dim oForm as Object
oForm = thisComponent.DrawPage.Forms.GetByName("MainFormComposant")
oform.last
oForm.First
End Sub
A+
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
-
- Membre lOOyal
- Messages : 38
- Inscription : 04 nov. 2016 07:24
Re: [Base] Gestion de composants électroniques
Bonjour PIAF
Ta macro fonctionne parfaitement pour MainFormComposant
oForm = thisComponent.DrawPage.Forms.GetByName("MainFormComposant")
CONTEXTE
J'ai essayé de remplacer MainFormComposant par le nom du formulaire afin d'employer la même macro pour quasi tous les formulaires contenant une liste.
J'ai même activé XRAY pour m'aider dans cette tâche et j'ai compris que je n'y arriverai pas.
J'ai créé un nouveau module(Macro) AfficherNbrComp avec plusieurs macros afin d'afficher dans les listes le nombre exact d’enregistrements.
ça fonctionne parfaitement, mais pas TOP.
Pourquoi un nouveau module, pour t'éviter de chercher
BESOIN
activer une seule macro pour afficher dans la liste le nombre exact d'enregistrements pour n'importe quel formulaire
Sub AfficherNbrComp
Dim oForm as Object
oForm = thisComponent.DrawPage.Forms.GetByName(NomDuFormulaireActif)
oform.last
oForm.First
End Sub
Amicalement
Alain
Ta macro fonctionne parfaitement pour MainFormComposant
oForm = thisComponent.DrawPage.Forms.GetByName("MainFormComposant")
CONTEXTE
J'ai essayé de remplacer MainFormComposant par le nom du formulaire afin d'employer la même macro pour quasi tous les formulaires contenant une liste.
J'ai même activé XRAY pour m'aider dans cette tâche et j'ai compris que je n'y arriverai pas.
J'ai créé un nouveau module(Macro) AfficherNbrComp avec plusieurs macros afin d'afficher dans les listes le nombre exact d’enregistrements.
ça fonctionne parfaitement, mais pas TOP.
Pourquoi un nouveau module, pour t'éviter de chercher
BESOIN
activer une seule macro pour afficher dans la liste le nombre exact d'enregistrements pour n'importe quel formulaire
Sub AfficherNbrComp
Dim oForm as Object
oForm = thisComponent.DrawPage.Forms.GetByName(NomDuFormulaireActif)
oform.last
oForm.First
End Sub
Amicalement
Alain
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibreOffice 5.1.6.2 sous Windows 10
-
- GourOOu
- Messages : 5622
- Inscription : 25 nov. 2011 18:07
- Localisation : Guyane
Re: [Base] Gestion de composants électroniques
Bonjour
A testerA+
A tester
Code : Tout sélectionner
Sub AfficherNbr
Dim oForm as Object
Dim NomForm as String
NomForm = thisComponent.DrawPage.Forms.ElementNames(0)
oForm = thisComponent.DrawPage.Forms.GetByName(NomForm)
oForm.Last
oForm.First
End Sub
Libre Office Version: 6.1.6 et Apache OpenOffice 4.1.6 Sur Xubuntu 18.04 AMD64
-
- Membre lOOyal
- Messages : 38
- Inscription : 04 nov. 2016 07:24
Re: [Base] Gestion de composants électroniques
bonjour PIAF
Déjà ta solution ça fonctionne, comme d'habitude parfaitement.
CONTEXTE
Je réalise des projets électroniques pour tester des circuits ou parfois des projets d'une utilité relative. (Détection, température, humidité, mouvements GPS etc..)
Je reçois des circuits simples voire complexes d'amis ou achetés sur EBAY.
Tous ces circuits et projets qui fonctionnent ou pas, deviennent une source de composants disponibles pour les projets suivants.
Comme je suis relativement fainéant Je ne souhaite pas dessouder les composants de leur platine avant besoin.
Actuellement gestion des composants électroniques fonctionne avec des rangements (boite, casier, compartiment)
BESOIN
J'aimerais que ces circuits ou anciens projets puissent "intégrer" Gestion des composants électroniques.
J'aimerais que l'on puisse rechercher les composants électroniques aussi bien dans les rangements(boites)que (projets) que (circuit) de la même manière ou presque.
Je différencie PROJET et CIRCUIT car j'ai un avenir pour PROJET (PROJET contiendra les composants dont j'aurai besoin lors de la création d'un nouveau projet )
IDÉE I
Faut-il utiliser l'existant "rangement" car le nombre de casiers et compartiments sont illimités ?
Exemple BOITE devient CIRCUIT I avec CASIER 1 pour le premier composant CASIER 2 pour le second composant
Cette solution me semble douteuse et pas très sérieuse
IDÉE II
Créer une nouvelle TABLE CIRCUIT -> COMPOSANT (Les composants se trouvant sur le circuit )
Créer une nouvelle TABLE PROJET -> COMPOSANT (Les composants se trouvant sur le projet ) ou (les composants pour le prochain projet)
Exemple J'aimerais peaufiner ce modèle avant d'aller plus en avant
Merci par avance
Alain
Déjà ta solution ça fonctionne, comme d'habitude parfaitement.
CONTEXTE
Je réalise des projets électroniques pour tester des circuits ou parfois des projets d'une utilité relative. (Détection, température, humidité, mouvements GPS etc..)
Je reçois des circuits simples voire complexes d'amis ou achetés sur EBAY.
Tous ces circuits et projets qui fonctionnent ou pas, deviennent une source de composants disponibles pour les projets suivants.
Comme je suis relativement fainéant Je ne souhaite pas dessouder les composants de leur platine avant besoin.
Actuellement gestion des composants électroniques fonctionne avec des rangements (boite, casier, compartiment)
BESOIN
J'aimerais que ces circuits ou anciens projets puissent "intégrer" Gestion des composants électroniques.
J'aimerais que l'on puisse rechercher les composants électroniques aussi bien dans les rangements(boites)que (projets) que (circuit) de la même manière ou presque.
Je différencie PROJET et CIRCUIT car j'ai un avenir pour PROJET (PROJET contiendra les composants dont j'aurai besoin lors de la création d'un nouveau projet )
IDÉE I
Faut-il utiliser l'existant "rangement" car le nombre de casiers et compartiments sont illimités ?
Exemple BOITE devient CIRCUIT I avec CASIER 1 pour le premier composant CASIER 2 pour le second composant
Cette solution me semble douteuse et pas très sérieuse
IDÉE II
Créer une nouvelle TABLE CIRCUIT -> COMPOSANT (Les composants se trouvant sur le circuit )
Créer une nouvelle TABLE PROJET -> COMPOSANT (Les composants se trouvant sur le projet ) ou (les composants pour le prochain projet)
Exemple J'aimerais peaufiner ce modèle avant d'aller plus en avant
Merci par avance
Alain
Vous ne pouvez pas consulter les pièces jointes insérées à ce message.
LibreOffice 5.1.6.2 sous Windows 10