Questione : annidato se il più statemest nel crystall 2008

Sto tentando di automatizzare un processo molto manuale delle commissioni.  Mentre il tempo è andato sugli ufficiali di prestito differenti sono stati assunti con differenti programmi di commsiion che interessano il numero dei punti che di base ricevono da ogni chiuso prestano.  Ho raggruppato questi programmi differenti in 10 tipi della commissione ed ho generato un campo nella base di dati per seguire il tipo della commissione di ogni ufficiale di prestito.  All'interno di ciascuno dei tipi differenti della commissione ci è inoltre il tipo di prestito e la somma totale di commercio fatta durante il mese come variabili.  So che potrei fare questo con altrimenti se dichiarazioni come segue:

NumberVar BP;
numbervar BPTotal;

if {CB_Originator_View.ComType} = 1
and {ISB_Commissions_view.alias2} = somma del
and “di ISB " ({ISB_Commissions_view.totalloanamount}, {@LO}) < 500000 allora BP: = 30
else se {CB_Originator_View.ComType} = 1
and {ISB_Commissions_view.alias2} = somma del
and “di ISB " ({ISB_Commissions_view.totalloanamount}, {@LO}) in 500000 - 999999 allora BP: = 35
else se {CB_Originator_View.ComType} = 1
and {ISB_Commissions_view.alias2} = somma del
and “di ISB " ({ISB_Commissions_view.totalloanamount}, {@LO}) in 1000000 - 1499999 allora BP: =40
else se {CB_Originator_View.ComType} = 1
and {ISB_Commissions_view.alias2} = somma del
and “di ISB " ({ISB_Commissions_view.totalloanamount}, {@LO}) in 1500000 - 1999999 allora BP: =45
else se {CB_Originator_View.ComType} = 1
and {ISB_Commissions_view.alias2} = somma del
and “di ISB " ({ISB_Commissions_view.totalloanamount}, {@LO}) in 2000000 - 2499999 allora BP: =50
else se {CB_Originator_View.ComType} = 1
and {ISB_Commissions_view.alias2} = >= 2500000 allora BP di somma del
and “di ISB " ({ISB_Commissions_view.totalloanamount}, {@LO}): =55;
BPTotal: =BPTotal+BP;
BP

And allora naturalmente che repete per il tipo di prestito (sopra quale là sono vari).  Che cosa sto domandandomi è può io fare un reale annidato se come:

if {CB_Originator_View.ComType} = 1
{ISB_Commissions_view.alias2} = somma del
“di ISB " ({ISB_Commissions_view.totalloanamount}, {@LO}) < 500000 allora BP: = somma di 30
({ISB_Commissions_view.totalloanamount}, {@LO}) in 500000 - 999999 allora BP: = somma di 35
({ISB_Commissions_view.totalloanamount}, {@LO}) in 1000000 - 1499999 allora BP: Somma di =40
({ISB_Commissions_view.totalloanamount}, {@LO}) in 1500000 - 1999999 allora BP: Somma di =45
({ISB_Commissions_view.totalloanamount}, {@LO}) in 2000000 - 2499999 allora BP: >= 2500000 allora BP di somma di =50
({ISB_Commissions_view.totalloanamount}, {@LO}): =55
class= del

Risposta : annidato se il più statemest nel crystall 2008

Dovreste potere annidarlo il senso ho descritto, ma penso che annidando un interruttore all'interno di un interruttore potrebbe ottenere un piccolo peloso…

Forse qualcosa di simile?

BP: =
SE {CB_Originator_View.ComType} = 1
ALLORA
    (SE {ISB_Commissions_view.alias2} = “ISB„
        ALLORA (somma dell'interruttore ({ISB_Commissions_view.totalloanamount}, {@LO}) <� 500000="">                somma ({ISB_Commissions_view.totalloanamount}, {@LO}) in 500000 - 999999, 35,
                ….e sopra e così via
              ALLINEARE, 55)
     ALTRIMENTI SE {ISB_Commissions_view.alias2} = “FNMA„
        ALLORA (somma dell'interruttore ({ISB_Commissions_view.totalloanamount}, {@LO}) <� 500000="">                somma ({ISB_Commissions_view.totalloanamount}, {@LO}) in 500000 - 999999, 35,
                ….e sopra e così via
              ALLINEARE, 55)
      )

ALTRIMENTI SE {CB_Originator_View.ComType} = 2
ALLORA
    (SE {ISB_Commissions_view.alias2} = “ISB„
        ALLORA (somma dell'interruttore ({ISB_Commissions_view.totalloanamount}, {@LO}) <� 500000="">                somma ({ISB_Commissions_view.totalloanamount}, {@LO}) in 500000 - 999999, 35,
                ….e sopra e così via
              ALLINEARE, 55)
     ALTRIMENTI SE {ISB_Commissions_view.alias2} = “FNMA„
        ALLORA (somma dell'interruttore ({ISB_Commissions_view.totalloanamount}, {@LO}) <� 500000="">                somma ({ISB_Commissions_view.totalloanamount}, {@LO}) in 500000 - 999999, 35,
                ….e sopra e così via
              ALLINEARE, 55)
      )

ALTRIMENTI 0
Altre soluzioni  
 
programming4us programming4us