Programim dhe zhvillim, javascript, python, php, html

if-else-if-else në shprehjen e fushës së tekstit [dublikatë]

Më duhet të tregoj kolonat: - dërgo - merr - anulohet

Në një kolonë raporti duke kontrolluar një vlerë nga DB e cila është "Status". Pra, nëse Statusi është i barabartë me 1, atëherë dërgo,=2 merr, = 3 anulohet.

Shprehja e fushës së tekstit në raportin jasper (? a:b) mund të marrë vetëm një kusht, si mund të jap kushte të shumta? diçka si një shkallë tjetër?


Përgjigjet:


1

Ju mund të përdorni një deklaratë treshe të mbivendosur për ta arritur këtë, por është e çrregullt.

Për shembull:

(i == 1) ? "Send" : ((i == 2)? "Received" : "Cancelled");
13.01.2011
  • Unë gjithashtu e bëra këtë disa herë, dhe është në rregull deri në tre kushte ... por kush do ta dekodonte nëse shkruani 5 ose më shumë kushte? 13.01.2011
  • faleminderit, edhe unë e bëra këtë.. por siç tha @davorp. 3 është maksimumi. 13.04.2011
  • Kjo përgjigje rezulton me erë të kodit me siguri. @Sean ka të drejtë: Bëj ndonjë logjikë në kokën tënde, duke ia kaluar rezultatin raportit. 12.09.2012

  • 2

    ju mund të përdorni metodën e zëvendësimit (), por duhet të ndryshoni klasën e fushës tuaj në String nëse nuk është, EX:

    $F{f_phone_type}.replace("0","Phone/ATA").replace("1","Gateway").replace("2","SIPTrunk")
    
    11.04.2011

    3

    Bëjeni fushën e statusit një parametër që kalon nga fasulja juaj. Në këtë mënyrë ju mund të bëni çfarëdo përpunimi që ju nevojitet në fasulen tuaj, t'ia caktoni rezultatin variablit të parametrit dhe ta kaloni atë në raportin tuaj.

    24.01.2011
  • faleminderit.. vendosja në fasule mund të jetë një zgjidhje e zbatueshme në vend që të shprehet në vetë raportin. 27.01.2011

  • 4

    Metoda ime e preferuar është krijimi i një parametri me zëvendësimet në formën e një HashMap, kur keni një grup të madh nënstacionesh ose nëse ato mund të ndryshojnë.

    Ju ose mund t'i kaloni zëvendësimet në kohën e ekzekutimit ose të vendosni një vlerë të paracaktuar. Përfitimi është se mund ta përditësoni hartën pa e ripërpiluar raportin tuaj.

    Për shembull, nëse do të kishit një parametër të quajtur "risk_types" (duke përdorur gjuhën e paracaktuar si groovy), do ta vendosni vlerën e paracaktuar të parametrit në diçka si

    [1: "HIGH RISK", 2: "LOW RISK"]
    

    Në kodin tuaj, do të kishit shprehjen e fushës së tekstit si (ku risk_type është fusha e kërkimit nga baza e të dhënave):

    $P{risk_types}.get($F{risk_type})
    

    Për artikujt që mungojnë në hartë, do të merrni një vlerë nule, unë zgjas shprehjen e fushës së tekstit në:

    $P{risk_types}.get($F{risk_type}) ?: "UNDEFINED"
    
    24.06.2013

    5

    Boolean.valueOf(!($P{accWise}.equals("AC" ) && $F{RQAC_ACCREJ}.equals("R"))) është i dobishëm për të dhënë kushte të shumta në vetitë e raportimit.

    07.01.2014
    Materiale të reja

    Masterclass Coroutines: Kapitulli-3: Anulimi i korutinave dhe trajtimi i përjashtimeve.
    Mirë se vini në udhëzuesin gjithëpërfshirës mbi Kotlin Coroutines! Në këtë seri artikujsh, unë do t'ju çoj në një udhëtim magjepsës, duke filluar nga bazat dhe gradualisht duke u thelluar në..

    Faketojeni derisa ta arrini me të dhënat false
    A e gjeni ndonjëherë veten duke ndërtuar një aplikacion të ri dhe keni nevojë për të dhëna testimi që duken dhe duken më realiste ose një grup i madh të dhënash për performancën e ngarkesës...

    Si të përdorni kërkesën API në Python
    Kërkesë API në GitHub për të marrë depot e përdoruesve duke përdorur Python. Në këtë artikull, unë shpjegoj procesin hap pas hapi për të trajtuar një kërkesë API për të marrë të dhëna nga..

    Një udhëzues hap pas hapi për të zotëruar React
    Në këtë artikull, do të mësoni se si të krijoni aplikacionin React, do të mësoni se si funksionon React dhe konceptet thelbësore që duhet të dini për të ndërtuar aplikacione React. Learning..

    AI dhe Psikologjia — Pjesa 2
    Në pjesën 2 të serisë sonë të AI dhe Psikologji ne diskutojmë se si makineritë mbledhin dhe përpunojnë të dhëna për të mësuar emocione dhe ndjenja të ndryshme në mendjen e njeriut, duke ndihmuar..

    Esencialet e punës ditore të kodit tim VS
    Shtesat e mia të preferuara - Git Graph 💹 Kjo shtesë është vërtet e mahnitshme, e përdor përpara se të filloj të punoj për të kontrolluar dy herë ndryshimet dhe degët më të fundit, mund të..

    Pse Python? Zbulimi i fuqisë së gjithanshme të një gjiganti programues
    Në peizazhin gjithnjë në zhvillim të gjuhëve të programimit, Python është shfaqur si një forcë dominuese. Rritja e tij meteorike nuk është rastësi. Joshja e Python qëndron në thjeshtësinë,..