Passa al contenuto principale

DEFDIAGRAMHIERARCHICALCHART

Desktop

Consente di definire un diagramma di tipo organigramma.

Un esempio è la rappresentazione grafica della strutturazione interna di un'azienda o di un gruppo di elementi.

La fonte dati del controllo è una collezione di tipo BC_VID_DGR_ORG.

suggerimento

Ogni modifica obbliga l'ambiente a rigenerare l'intera disposizione degli elementi. La rigenerazione non è pesante, ma può produrre un effetto grafico di lampeggio in presenza di molti elementi. Per questo motivo, in caso di modifiche massive, è necessario utilizzare la specifica '@SUSPENDEDVIDREFRESH.

Parametri

ParametroDefinizioneI/OInformazioniVersione traduttoreSMP
NOMEInteroINObbligatorioDesktop
RETINObbligatorioDesktop
POSINDesktop
DIMINDesktop
IDStringaINDesktop
COLLEZIONEDATICollezione di classiObbligatorioDesktop
MODIFICABILEInteroINBinarioDesktop
AZIONEAzioneINDesktop
VISUALIZZAZIONEEnumerazioneINDesktop
GRIDINDesktop
STACKINDesktop
EXPANDERINDesktop
DOCKINDesktop
PERSONALIZZABILEInteroINBinarioDesktop
LINKTOINDesktop

NOME

InteroINInputObbligatorioObbligatorioValore non necessarioValore non necessarioDesktop

Consente di definire il nome del controllo.

RET

INInputObbligatorioObbligatorioValore non necessarioValore non necessarioDesktop

Consente di definire le coordinate della cella del reticolo da associare al controllo, allo scopo di gestire gli spostamenti sulla videata.

POS

INInputValore non necessarioValore non necessarioDesktop

Consente di definire la posizione del controllo rispetto al contenitore.

DIM

INInputValore non necessarioValore non necessarioDesktop

Dimensione del controllo.

Consente di indicare l'altezza e la larghezza. Per entrambi è possibile specificare l'unità di misura.

DIM[Altezza [UnitàMisura], Larghezza [UnitàMisura]]

note

L'unità di misura può essere: 'C' per il posizionamento a caratteri e 'P' per il posizionamento in pixel. L'indicazione è opzionale, se omesso si assume 'C' come default.

ID

StringaINInputValore non necessarioValore non necessarioDesktop

Consente di definire l'identificativo univoco del controllo.

note

Viene utilizzato dall'ambiente per gestire le personalizzazioni effettuate durante l'esecuzione del programma.

COLLEZIONEDATI

Collezione di classiObbligatorioObbligatorioValore non necessarioValore non necessarioDesktop

Consente di definire gli elementi da visualizzare.

MODIFICABILE

InteroINInputBinarioBinarioValore non necessarioValore non necessarioDesktop

Consente di definire se il diagramma è modificabile.

Parametro con valori ammessi, si possono utilizzare i seguenti valori:

ValoreDescrizione
0No
1Si

AZIONE

AzioneINInputValore non necessarioValore non necessarioDesktop
SottoParametri

Consente di definire la callback richiamata quando un'entità viene selezionata.

VISUALIZZAZIONE

EnumerazioneINInputValore non necessarioValore non necessarioDesktop

Consente di definire la dimensione iniziale e il layout delle entità.

Parametro enumerato, può assumere i seguenti valori:

ValoreDescrizione
DIAGRAMMABASEIl layout dell'oggetto grafico riguarderà solo i dati contenuto all'interno dell'oggetto BC_VID_DGR_ORG.
DIAGRAMMADIDETTAGLIOIl layout dell'oggetto grafico riguarderà i dati contenuto all'interno dell'oggetto BC_VID_DGR_ORG, e i suoi relativi dettagli contenuto all'interno della BC_VID_DGR_ORG_ELEM.

GRID

INInputValore non necessarioValore non necessarioDesktop
SottoParametri

Consente di definire l'attached property riferita ad un pannello grid.

STACK

INInputValore non necessarioValore non necessarioDesktop
SottoParametri

Consente di definire l'attached property riferita ad un pannello stack.

EXPANDER

INInputValore non necessarioValore non necessarioDesktop
SottoParametri

Consente di definire l'attached property riferita ad un pannello expander.

DOCK

INInputValore non necessarioValore non necessarioDesktop
SottoParametri

Consente di indicare se il controllo deve occupare tutto lo spazio del DockPanel in verticale e/o in orizzontale.

PERSONALIZZABILE

InteroINInputBinarioBinarioValore non necessarioValore non necessarioDesktop

Consente di definire se il controllo grafico è personalizzabile dall'utente in fase di runtime.

Parametro con valori ammessi, si possono utilizzare i seguenti valori:

ValoreDescrizione
0No
1Si

LINKTO

INInputValore non necessarioValore non necessarioDesktop
SottoParametri

Consente di definire un legame tra due controlli esistenti all'interno della stessa videata.

Metodi

MetodoDescrizioneSMP
Copia_Su_ClipboardCopia il diagramma in memoriaDesktop
Get_ElementoRestituisce la classe riferita all'elemento selezionatoDesktop
Riposizionamento_AutomaticoRiposiziona senza personalizzazioni tutti gli elementi del diagrammaDesktop
Salva_ImmagineSalvataggio del diagramma come immagineDesktop
Set_VisualizzazioneImposta il tipo di visualizzazione dell'organigrammaDesktop
Set_ZoomImposta un fattore di zoomDesktop
StampaStampa diagrammaDesktop

Esempi

Esempio DIAG

 '@DEFVID DIM[35,140] NOME[Videata] ID["IDVIDEATA"] TIT["Titolo Videata"]

'@DEFGRIDPANEL NOME[GridPanel] ID["GridPanel"] _
RIGA[ALTEZZA[0.5] LAYOUT[#FISSO]] _
RIGA[ALTEZZA[34] LAYOUT[#FISSO]] _
RIGA[ALTEZZA[0.5] LAYOUT[#FISSO]] _
COLONNA[LUNGHEZZA[0.5] LAYOUT[#FISSO]] _
COLONNA[LUNGHEZZA[139] LAYOUT[#DINAMICO]] _
COLONNA[LUNGHEZZA[0.5] LAYOUT[#FISSO]]

'@DEFDIAGRAMHIERARCHICALCHART NOME[DIAG] ID["DIAG"] RET[1,1] POS[1,1] DIM[34,139] _
COLLEZIONEDATI[CollezioneDiagrammi] MODIFICABILE[0] _
GRID[COL[2] RIGA[2] COLDIN[1] RIGADIN[1]]

'@ENDGRIDPANEL NOME[GridPanel]

'@RUNVID

...
'@SRP Load()

InitDIAG()

Return

...
'@SRP InitDIAG()

Diagramma.Id="01"
Diagramma.Titolo="Direzione"
Diagramma.Sottotitolo="Presidente AD"
Diagramma.Dettaglio1="Mario Rossi"
Diagramma.IdPadre=""
CollezioneDiagrammi .AggiungiElemento(Diagramma [INOUT])

Diagramma.Id="02"
Diagramma.Titolo="Direzione Operativa"
Diagramma.Sottotitolo=""
Diagramma.Dettaglio1="Margherita Rosa"
Diagramma.IdPadre="01"
CollezioneDiagrammi.AggiungiElemento(Diagramma [INOUT])

Diagramma.Id="03"
Diagramma.Titolo="Direzione Sviluppo"
Diagramma.Sottotitolo="Direzione AD"
Diagramma.Dettaglio1="Giseppe Verdi"
Diagramma.IdPadre="01"
CollezioneDiagrammi.AggiungiElemento(Diagramma [INOUT])

Diagramma.Id="04"
Diagramma.Titolo="Direzione Tecnica"
Diagramma.Sottotitolo="Sviluppo Software"
Diagramma.Dettaglio1="Marco Giallo"
Diagramma.Dettaglio2="Architetturale"
Diagramma.IdPadre="01"
CollezioneDiagrammi.AggiungiElemento(Diagramma [INOUT])

Return