Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Tema Cerrado
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 05-09-2008
GrupoDatasoft GrupoDatasoft is offline
Miembro
 
Registrado: ago 2008
Ubicación: Bogotá - Colombia
Posts: 13
Poder: 0
GrupoDatasoft Va por buen camino
Quitar datos recibidos de un puerto serial

Hola, buen dia a todos, lo que me sucede es lo siguiente:Tengo una aplicacion para punto de venta en delphi, estoy programandola para que en el campo cantidad de un dbgrid de tipo integer, me reciba el dato de peso enviado por la balanza electronica por puerto serial rs232 (com1). hasta alli normal, el problema, es que la balanza manda los datos de valor unitario, valor toal y peso, con sus respectivas iniciales de cada dato y lo que yo nececito es solamente el dato de peso, obviamente el campo del dbgrid no me recibe todos esos datos. La pregunta entonces es: como hacer para eliminar de los datos que me envia la balanza los que no me sirvan?, encontre una funcion delphi para cortar caracteres a partir de una posicion dada, pero igual no me sirve porque cuando se abre el puerto, la balanza nunca comienza a enviar desde el mismo punto si no desde cualquier punto, y entonces por eso no pude aplicar la funcion de cortar caracteres de la cadena de texto. Alguien me puede ayudar?. los datos que envia la balanza son asi:

ut 0
tt 0
US, NT, WT: +0.250 Kg (Y VUELVE Y EMPIEZA)
ut 0
tt 0
US, NT, WT: +0.250 Kg (Y ASI SUSECIVAMENTE)
El problema es que nunca empieza exactamente en "ut", unas veces comienza en "ut" otras en "tt" otras en "Kg" y asi mismo puede comenzar a mandar datos en cualquier parte. La verdad, estoy perdiendo varios clientes por falta de esta programacion, les agradeceria su colaboracion.

Gracias a todos...
  #2  
Antiguo 05-09-2008
[egostar] egostar is offline
Registrado
 
Registrado: feb 2006
Posts: 6.556
Poder: 25
egostar Va camino a la fama
Hola

Se me ocurre que la cadena que recibas busques la substring 'WT:' y de ahi copies el dato de los Kg.

Por ejemplo

Código Delphi [-]
procedure TForm1.Button1Click(Sender: TObject);
var
  cadena: string;
  indice: integer;
begin
  cadena := 'US, NT, WT: +0.250 Kg ';
  indice := pos('WT:',cadena);
  if indice > 0 then
     showmessage(copy(cadena,indice+5,5));
end;

Salud OS
__________________
"La forma de empezar es dejar de hablar y empezar a hacerlo." - Walt Disney
  #3  
Antiguo 05-09-2008
[maeyanes] maeyanes is offline
Capo de los Capos
 
Registrado: may 2003
Ubicación: Campeche, México
Posts: 2.732
Poder: 23
maeyanes Va por buen camino
egopolice...

Ahora si me fallaste: http://www.clubdelphi.com/foros/showthread.php?t=59717


Saludos...
  #4  
Antiguo 05-09-2008
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Voy a cerrar este tema debido a las repeticiones. Al usuario GrupoDataSoft le recomiendo que lea la guía de estilo para publicar mensajes correctamente.

// Saludos
Tema Cerrado



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Quitar datos recibidos de un puerto serial GrupoDatasoft API de Windows 1 05-09-2008 16:11:51
doble Puerto serial a la misma base de datos FGarcia Varios 0 22-11-2006 23:45:29
¿¿Como capturo datos que entran por el puerto serial de mi PC? David Nova Varios 2 11-10-2006 09:49:23
Escribir datos en el puerto serial en windows XP bill_mg API de Windows 8 09-07-2006 05:13:19
Como recibir datos en un puerto serial JULIPO PHP 1 17-06-2006 20:54:36


La franja horaria es GMT +2. Ahora son las 11:06:59.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi