Client UI komponent - combobox

Hvordan sette opp combobox komponenten i Client UI

Dersom man trenger et ekstra felt man kan benytte for å velge ekstra faste verdier som skal sendes med til ERPet, kan man bruke combobox komponenten til å opprette en ekstra nedtrekksmeny med forhåndsvalgte verdier. Dette eksempelet er laget for Plukk modulen i BxMobile, men kan brukes i de fleste modulene hvor vi støtter Client UI og hvor det er fornuftig å legge til et slikt felt. 

Dette krever oppsett i fem forskjellige moduler i BxAdmin. SQL Integration, Configuration -> Client Profiles, Export to ERP, Client UI og Language. Hvilken rekkefølge du gjør dette i har ikke så mye å si, men det enkleste er å begynne med SQL Integration, da har man en verdi å forholde seg til som likevel må legges til i resten av oppsettet. 

SQL Integration

Opprett ny custom spørring under SQL Integration, gi den et navn. I dette tilfellet kaller vi den Combotest. Spørringen må bestå av id og name. Verdiene kan hentes fra de tabeller og kolonner man ønsker fra ERPet, eller hardkode verdier i spørring. Eksempelet i denne artikkelen bruker hardkodede verdier i spørring. 

select
1 id,
'ComboValg1' name
union select
2 id,
'ComboValg2' name

Configuration -> Client Profiles

Under Area: system ligger customofflinetables, denne må fylles ut med navn på spørringen opprettet i SQL Integration. Dette parameteret tillater oss å laste ned verdiene hentet ut fra den opprettede spørringen til terminal. I dette tilfellet er navn på spørring Combotest. Flere spørringer kan legges til ved å skille på det med komma, f.eks. Combotest, Combotest2, Combotest3 etc.

Export to ERP

I Export to ERP velges først korrekt modul dette skal legges inn i, deretter må det legges opp en ny mapping som peker mot korrekt felt i ERPet. I dette tilfellet har vi lagt inn combotest i SourceField kolonnen, og ønsket felt i ERPet i Destination, i tillegg til å huke på Enabled. SourceField navnet du velger her må også gjenspeiles i SourceField i Client UI.

Client UI

Screen  PickingList, hvilket bilde combobox skal legges i, i dette tilfellet skal vi ha det i PickingList.
Name  Combotest, kan være hva som helst, men gi det gjerne et kort forklarende navn. Her kan man også legge navnet på eksisterende standard-felter som f.eks. "Batchno" for å ta over plassen til dette feltet, dersom man da ikke bruker feltet til noe annet. I slike tilfeller er også viktig at x+y posisjon+width er likt som Batchno feltet.
Enabled  Ja
SourceObject  Combotest, navnet på spørring dataene skal hentes fra.
SourceField  Combotest, navnet på sourcefield satt opp i Export to ERP.
ID fra spørring i SQL Integration er det som sendes som standard. Eksempel, sourcefield = combotest, id fra spørring sendes. Legg på name bak for å sende med navnet i stedet, combotestname, og navnet er det som sendes.
Visible  Ja, ikke egentlig nødvendig, men pleier å aktivere den
X-Position 1, avhengig av hvilken rad i bildet på terminalen feltet skal ligge. I det bildet og området vi skal legge det i har man valget mellom 1, 2 og 3. 2 ser ikke bra ut, og 3 brukes som regel ikke med mindre man skal ta over eksisterende felt som Batchno. Bruk derfor 1 til vanlig
Y-Position 3, avhengig av hvilken linje man skal legge feltet. I dette tilfellet blir det 3
Width 3, Bredden på feltet. 1 er samme bredde som eksisterende felter i PickingList, i dette tilfellet ønsker vi at feltet dekker hele skjerm-bredden, bruker derfor 3
Component combobox
Label text Comb: - bruk et kort navn i dette tilfellet, det er vanligvis ikke plass til mer enn 4-5 tegn. 

Language

Denne er ikke nødvendig, men er likevel fint å få inn en oversettelse på det slik at oversikten over nedlastede data viser hva som er lastet ned. Trykk Add og fyll ut Phrase ID med Combotest, som da er navn på spørringen, og Translation med hvordan teksten skal se ut. I dette eksempelet står det "Combotester", på terminalen vil det da komme frem som "Combotester mottatt". 

Kan kopiere koden nedenfor, justere verdiene og lime det inn (CTRL+C, CTRL-V) i Language i BxAdmin - da må Combotest etter textid og text endres før det lagres i BxAdmin. 

[{"id":3972,"language":"no","routine":"general","screen":"entryscreen","textid":"combotest","text":"Combotester"}]

BxMobile

I BxMobile kan man så hente innstillinger, deretter data. Resultatet blir da slik: