Newsgroup: it.comp.lang.visual-basic
Titolo: Visibilità Proprietà Oggetto

Ragazzi ho un dilemma anzi un vero e proprio problema!
Ho una proprietą di un oggetto che tramite un determinato processo si 
riempie. Questą proprietą č un insieme di oggetti.
In una routine ho messo un controllo che per l'appunto controlla che tutte 
le voci della suddetta proprietą siano complete e nel caso ci sia qualche 
cosa di incompleto si apre una form (modale) che permette all'utente di 
inserire manulamente i campi mancanti e qui arrivano i miei dubbi perchč non 
so dove inserire questa routine. Dove la metto, nella classe A oppure nella 
Sub cmdOkay_clik?
Calcolando che:
1) Se alla pressione del tasto Okay i dati ancora risultano mancanti deve 
riaprire la frmCompila e nel caso della pressione del tasto Cancella devo 
chiudere tutto?
--------------------------------------------------------------------------
QUELLO CHE IL PROGRAMMA "DOVREBBE" FARE
--------------------------------------------------------------------------
1)Aprire una fonte dati, importare questi dati dentro un oggetto dove una 
proprietą di questo oggetto č un'insieme di oggetti
2)Controllare i dati importati e se manca qualcosa dare l'opportunitą 
all'utente di inserire i dati manualmente
3)Se l'utente ci ripensa perchč non sa come inserire i dati mancanti 
bloccare il tutto
4)Se l'utente immette i dati mancanti e preme okay allora il programma deve 
controllare i dati inseriti e se giusti eliminare l'item
    che risultava incompleto, inserire l'item nuovo nello stesso posto di 
quello incompleto ( eliminato precedentemente)
5)Continuare a fare una serie di calcoli
6)Visualizzare una sorta di report e "ingrigliare" i dati importati dentro 
una griglia
Sono arrivato al punto 4 grrrrrrrrrrrrr ;(
La routine che richiama l'apertura della form č dentro la classe A
---------------------------------------------------------------------
CLASSE A
---------------------------------------------------------------------
Function CheckProprietą(strRows() As String) As Boolean
[cut]
            frmCompila.Show vbModal
[cut]
End Function
---------------------------------------------------------------------
frmCompila
---------------------------------------------------------------------
Private Sub cmdOkay_Click()
    Me.Hide
End Sub
---------------------------------------------------------------------
ROUTINE CHE NON SO DOVE METTERE
---------------------------------------------------------------------
Dim SottoProprietąIncompleta As SottoProprietą
Dim ProprietąIncompleta         As Proprietą
Set SottoProprietąIncompleta = New SottoProprietą
Set ProprietąIncompleta = New Proprietą
'Questa Sub preleva i dati inseriti manualmente dall'utente e li mette 
temporaneamente in 2 oggetti
PopolaInsieme TrattaIncompleta, GiornataIncompleta
'Convalida i dati inseriti precedentemente nei 2 oggetti
If ValidateAvv(SottoProprietąIncompleta, ProprietąIncompleta) = True Then
        'Rimuove l'item incompleto della classe di insieme tramite un indice 
(variabile globale)
***  Proprietą.Item(IndiceIncompleto).SottoProprietą.Remove 
Proprietą.Item(IndiceIncompleto).SottoProprietą.Count
        'Aggiunge l'item della classe di insieme ( precedentemente rimosso)
        Proprietą.Item(IndiceIncompleto).SottoProprietą.Add 
SottoProprietąIncompleta.Attivitą, SottoProprietąIncompleta.B, _
        SottoProprietąIncompleta.C, SottoProprietąIncompleta.D
End If
--------------------------------------------------------------------------
IL PROBLEMA CHE MI SI PONE
--------------------------------------------------------------------------
Ora io questa routine l'ho messa nella sub cmd_Okay della form frmCompila ma 
il problema mi si presenta alla riga dove ho
messo gli asterischi *** in quanto la proprietą dell'oggetto A ( che altro 
non č che una proprietą della Classe A) mi risulta NOTHING
Ora il problema sta tutto nella visibilitą della classe A. Mi date una mano 
per cortesia non so pił dove mettere le mani.
E' natale siamo tutti piu buoni :)

Forse ho formulato male la mia domanda speravo di trovare una soluzionee 
provo ad essere piu sintetico e semplice da capire
Una routine su un controllo di una proprietą di un oggetto č meglio metterla 
nella Sub Okay del tasto di una finestra modale oppure dentro la classe 
madre? (clacolando che se il controllo risulta negativo la form deve 
riapparire a video)
La domanda viene dal fatto che nella form non riesco a vedere l'oggetto che 
mi da un errore per il fatto che l'oggetto risulta NOTHING 

 E' natale siamo tutti piu buoni :)
Sempre IMHO, posti messaggi troppo lunghi e con troppo codice, e questo può far
sembrare che tu non abbia le idee chiarissime su dove stia il problema.
Il quale risulta così troppo poco "circoscritto" e non è facile aiutarti. Non è
sempre pensabile che qualcuno abbia il tempo e la pazienza di analizzare tutto
il codice!
Bye & Happy Holidays
Raf
P.S.
Stai bene, Ste'?

 il codice!
Se dovevo scegliere sui migliaia di utenti di questo forum non avevo dubbi 
che tu saresti stato
il primo a dare una mano
Felice Natale ( passato) e un ottimo anno nuovo e che Dio ti porti tante 
cose belle
NoFlyZone


Ho fatto caso solo all'utimo che mi avevi scritto un PS
e ho volutamente lasciato invariato l'apertura della mia mail
Anche se tardi e se irrilevante per te ti chiedo ancora scusa.
Ti ho anche scritto tempo fa perchè ho trovato un bug nel tuo codice
ma non avendo piu ricevuto nulla da te ho pensato alla fine di non
scriverti piu (malignamente ho pensato che avessi messo un filtro in
modo che le mie mal andassero direttamente nel cestino).
Rispondendo alla tua domanda sono un pò raffreddato e ho la gola a pezzi
ma a partre tutto sto bene. Spero che stia bene anche tu.
Con grande stima ancora AUGURI di TUTTO

 Questa domanda non l'ho capita!
Significa che il codice dovrebbe essere concepito come una sorta di
collaborazione tra entità (oggetti, form etc..) di livelli diversi, ciascuna
delle quali si occupa di una determinata funzione. Queste possono venire
"coordinate" da un'entità di livello superiore che generalmente è quella che
risponde alle azioni dell'utente, ossia la user interface principale.
Sono considerazioni che riguardano l'analisi ed il design del software in
generale, più che VB nello specifico.
A questo proposito, puoi probabilmente trovare qualche spunto interessante
nel seguente link, per riallacciarmi a vecchi discorsi...
http://programmazione.html.it/uml/
Ciao
Raf
P.S.
No, non ti ho bannato, è solo che non ho più tanto tempo per seguirti.