Power Builder - Captura cadena completa

   
Vista:

Captura cadena completa

Publicado por Jose Antonio jose.cucho@yahoo.es (2 intervenciones) el 21/08/2012 21:37:57
Estimados

Utlizando PB 9.0 con libreria MSCOMM32.OCX logre comunicacion con central telefonica, el problema que tengo es que no logro recibir de forma ordenada la cadena.
Utilizando un Editor Hexadecimal ubique al lado derecho de la cadena los valores CHR(13) CHR(10).

Muchas gracias por su atencion,

Saludos cordiales,


Window / open
--------------------
ole_1.object.commport = 2 //puerto COM?
ole_1.object.settings = "1200,n,8,1" // rate,parity,data_bit,bit
ole_1.object.rthreshold = 1 // 0= oncomm no recibe caracteres 1=habilita a oncomm recibir un caracter
ole_1.object.inputlen =0 // numero de caracteres a leer del buffer
ole_1.object.inputmode = 0
ole_1.object.portopen = true // true = puerto abierto false= puerto cerrado

evento / Ole_1 .Oncomm
----------------------------------
choose case ole_1.object.commevent
case 2
ole_1.object.rthreshold = 0
string ls_t, ls_t2, num[], ls_t81, ls_t82, ls_t83, ls_t84

ls_t = ole_1.object.input // EN ESTA VARIABLE SE GUARDA LA CADENA
ole_1.object.rthreshold = 1

num[1] = mid(ls_t,1,14)
num[2] = mid(ls_t,1,14)
num[3] = mid(ls_t,1,14)
num[4] = mid(ls_t,1,14)
ls_t81 = num[1]
ls_t82 = num[2]
ls_t83 = num[3]
ls_t84 = num[4]
ls_t2 = ls_t81 + ls_t82 + ls_t83 + ls_t84

case 1006
st_1.text = "over run"
case 8020
st_1.text = "read comm device error"
case 1001
st_1.text = "break signal received"
case else
st_1.text = string( ole_1.object.input)
return
end choose


//CADENA generado con HyperTerminal
169 112 --> 10 URB 05/04/11 16:21 0-03 HA 997024015


// CADENA generado atravez de PB
772 112 --> 11772 112 --> 11772 112 --> 11772 112 --> 11772 112 --> 11
URB 20/08/12 URB 20/08/12 URB 20/08/12 URB 20/08/12 URB 20/08/12
22:00 0-0022:00 0-0022:00 0-0022:00 0-0022:00 0-00
HA 997 HA 997 HA 997 HA 997 HA 997
024015

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Captura cadena completa

Publicado por Jose Antonio (2 intervenciones) el 18/09/2012 23:53:31
Estimados
Luego de algunas modificaciones logre capturar cadena completa de una central telefonica con las siguientes lineas:

Window / open
--------------------
ole_1.object.commport = 2
ole_1.object.settings = "1200,n,8,1"
ole_1.object.rthreshold = 1
ole_1.object.inputlen =0
ole_1.object.inputmode = 0
ole_1.object.portopen = true

Instance Variables
-------------------------
string ls_t


evento / Ole_1 .Oncomm
----------------------------------
choose case ole_1.object.commevent
case 2
ole_1.object.rthreshold = 0

ls_t = ls_t + ole_1.object.input // EN ESTA VARIABLE SE GUARDA LA CADENA
ole_1.object.rthreshold = 1

case 1006
st_1.text = "over run"
case 8020
st_1.text = "read comm device error"
case 1001
st_1.text = "break signal received"
case else
st_1.text = string( ole_1.object.input)
return
end choose

if len(ls_t) > 58 then
aqui grabar la informacion
ls_t =""
end if
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

Captura cadena completa

Publicado por alfredo ing.alfredo_silva@hotmail.com (1 intervención) el 11/09/2013 17:24:10
Hola amigo, no me funciona tu codigo error en la linea 5

"ls_t = ls_t + ole_1.object.input // EN ESTA VARIABLE SE GUARDA LA CADENA"

cuelgo el telefono y sale el mensaje de error en esta linea...ayuda..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar