benito
2nd May 2012, 13:44
i have a baan script that prints labels in the shop floor. it's interactive and it brings an input form if the quantity printed (qty x number of boxes) is still less than the received quantity. this is in the dll called by main program and all works well as expected. the problem is i will also be calling this dll through the BDE. the purpose is to have a front end written in java on the intermec scanner. (this interactive feature is a new requirement and didnt plan for this before writing the dll). short of re-writing the whole thing and bring this logic into the java front-end, is there a way i can call a non-baan form (pls see my note: open external program) like html, dos screen, etc that can pass a value to baan? i can probably call an asp page, take the user input and place the value in a temp baan table but i thought that would give me a lag as i need the value fast so i can print the labels.
select whinh312.*
from whinh312
where whinh312.rcno = {:i_rcno}
order by whinh312.rcno,whinh312.rcln
selectdo
prnt.qty = whinh312.qrec
if (print.box.yn = tcyesno.yes or printbox = 1 ) then
for num.of.boxes = 1 to i_nbox
quan1 = i_bqty
print_one_label("1 ")
endfor
rem.qty = whinh312.qrec - (i_bqty * i_nbox)
if rem.qty > 0 then
if baan_prog = true then
REPEAT
ret.str = start.session(MODAL,
"bbinh3412m001",
"bbinh3412m000",
"")
print.box.yn = tcyesno.no
import("box.qty", box.qty)
quan1 = box.qty
print_one_label("1 ")
rem.qty = rem.qty - quan1
UNTIL rem.qty <= 0
else
|* open external program; coming from BDE
|
|start.application.local ???
endif
endif
else
quan1 = whinh312.qrec
print_one_label("1 ")
endif
endselect
select whinh312.*
from whinh312
where whinh312.rcno = {:i_rcno}
order by whinh312.rcno,whinh312.rcln
selectdo
prnt.qty = whinh312.qrec
if (print.box.yn = tcyesno.yes or printbox = 1 ) then
for num.of.boxes = 1 to i_nbox
quan1 = i_bqty
print_one_label("1 ")
endfor
rem.qty = whinh312.qrec - (i_bqty * i_nbox)
if rem.qty > 0 then
if baan_prog = true then
REPEAT
ret.str = start.session(MODAL,
"bbinh3412m001",
"bbinh3412m000",
"")
print.box.yn = tcyesno.no
import("box.qty", box.qty)
quan1 = box.qty
print_one_label("1 ")
rem.qty = rem.qty - quan1
UNTIL rem.qty <= 0
else
|* open external program; coming from BDE
|
|start.application.local ???
endif
endif
else
quan1 = whinh312.qrec
print_one_label("1 ")
endif
endselect