FiveTech Support Forums

FiveWin / Harbour / xBase community
Board index FiveWin para Harbour/xHarbour Consulta sobre uso de FW_BarCodeBmp ???
Posts: 719
Joined: Fri May 12, 2017 02:50 PM
Consulta sobre uso de FW_BarCodeBmp ???
Posted: Tue Jul 05, 2022 11:56 PM

Hola Amigos

Necesito me puedan ayudar con la generaci贸n de un c贸digo QR.

Lo que necesito es generar el c贸digo QR, con 3 datos, para su lectura y verificaci贸n por WEB.

Datos Ejemplo que debe llevar:

  • URL: http://www.empresa.com (Sitio donde estar谩 la tabla que contiene datos a verificar).
  • Folio = Es el numero de certificado.
  • Rut = Identificaci贸n personal de suscrito en el certificado.

Necesito saber la forma correcta de definir estos datos en el QR, hoy puedo imprimir en el certificado el c贸digo QR, de las 2 formas que muestro y funciona bien, pues al leerlo, deriva al sitio que lleva en el c贸digo.

Muchos Saludos.
Antonio

Opci贸n 1:
聽 聽 聽// Genero e Imprimo Codigo QR
聽 聽 聽hBmp := FW_BarCodeBmp( "www.prueba.com","QRCODE", 200, 200 )

聽 聽 聽@ 220, 20 PRINT TO oPrn IMAGE hBmp SIZE 39.5, 24 MM

Opci贸n 2:

聽 聽 聽 聽 @ 220,20 PRINT TO oPrn TEXT "www.prueba.com" + CRLF + Str(nCerti,10) + CRLF + cRut 聽;
聽 聽 聽 聽 聽AS BARCODE TYPE "QR-CODE" SIZE 39.5,24 MM
FWH 22.10 - HARBOUR - PELLES C
Posts: 10733
Joined: Sun Nov 19, 2006 05:22 AM
Re: Consulta sobre uso de FW_BarCodeBmp
Posted: Wed Jul 06, 2022 08:57 AM

Option 2 is better

Regards



G. N. Rao.

Hyderabad, India
Posts: 1816
Joined: Wed Oct 26, 2005 02:49 PM
Re: Consulta sobre uso de FW_BarCodeBmp
Posted: Wed Jul 06, 2022 12:54 PM

Amigo como vas, yo le agregar铆a una ofuscaci贸n

cCertBas64 := hb_base64encode(Str(nCerti,10),len(Str(nCerti,10)))
cRutBas64 := hb_base64encode(cRut,len(cRut))

@ 220,20 PRINT TO oPrn TEXT "www.prueba.com?certi="+ cCertBas64 + "&rut="+cRutBas64 聽 聽;
聽 聽 聽 聽 聽AS BARCODE TYPE "QR-CODE" SIZE 39.5,24 MM
Saludos
LEANDRO AREVALO
Bogot谩 (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 25.01 ] [ xHarbour 64 bits) ]
Posts: 719
Joined: Fri May 12, 2017 02:50 PM
Re: Consulta sobre uso de FW_BarCodeBmp
Posted: Wed Jul 06, 2022 07:45 PM
nageswaragunupudi wrote:Option 2 is better


Mr. Rao

Muy buenas tardes.

Muchas gracias.

Saludos

Antonio
FWH 22.10 - HARBOUR - PELLES C
Posts: 719
Joined: Fri May 12, 2017 02:50 PM
Re: Consulta sobre uso de FW_BarCodeBmp
Posted: Wed Jul 06, 2022 07:57 PM
leandro wrote:

Amigo como vas, yo le agregar铆a una ofuscaci贸n

cCertBas64 := hb_base64encode(Str(nCerti,10),len(Str(nCerti,10)))
cRutBas64 := hb_base64encode(cRut,len(cRut))

@ 220,20 PRINT TO oPrn TEXT "www.prueba.com?certi="+ cCertBas64 + "&rut="+cRutBas64 聽 聽;
聽 聽 聽 聽 聽AS BARCODE TYPE "QR-CODE" SIZE 39.5,24 MM

Hola Leandro.

Muchas gracias por tu preocupaci贸n y ayuda. Ya lo aplique.

En estos momentos, imprimo los documentos con el c贸digo QR, con la modificaci贸n que me indicas y adem谩s imprimo la firma del profesional, que guardo en un archivo, para mayor seguridad y no tenerla como jpg en una carpeta, que puede ser tomada y mal usada, los profesionales afectos a esta firma y QR, no son mas de 50 diferentes.

El paso siguiente es poder grabar en paralelo en un tabla que se almacenara en un hosting, la cual solo ser谩 usada para recibir las verificaciones de validez que se realicen desde el c贸digo QR y ser谩n localizadas por Certi y Rut y los datos ser谩n mostrados en un formulario.

A pesar de la urgencia, me a costado avanzar.

Muchas gracias por por tu tiempo y ayuda.

Saludos.
Antonio

FWH 22.10 - HARBOUR - PELLES C
Posts: 1816
Joined: Wed Oct 26, 2005 02:49 PM
Re: Consulta sobre uso de FW_BarCodeBmp
Posted: Thu Jul 07, 2022 02:57 AM

Correcto ese es el paso siguiente, se puede hacer de varias formas, nosotros hacemos el llamado a un web service desde la aplicaci贸n de escritorio, y hacemos el registro en el servidor apoy谩ndonos en mysql y php.

聽 聽 聽 聽 聽 聽 聽 聽 hDatos := {=>} //el json con los datos a subir

聽 聽 聽 聽 enviar := hb_jsonEncode( hDatos )

聽 聽 聽 聽 ohttp := CreateObject( "MSXML2.XMLHTTP" )
聽 聽 聽 聽 ohttp:Open( "POST" ,"https://prueba/ws_regrut",.F.)

聽 聽 聽 聽 oHttp:SetRequestHeader("cache-control", "no-cache")
聽 聽 聽 聽 ohttp:SetRequestHeader("content-type", "application/json" )
聽 聽 聽 聽 ohttp:SetRequestHeader("authorization", "Basic "+cBas64 )
聽 聽 聽 聽 TRY
聽 聽 聽 聽 聽 ohttp:Send( enviar )
聽 聽 聽 聽 CATCH
聽 聽 聽 聽 聽 聽 msginfo("No Se Pudo Enviar Documento JSON","Intente Nuevamente")
聽 聽 聽 聽 聽 聽 return .t.
聽 聽 聽 聽 END
聽 聽 聽 聽 response:=ohttp:responseText
聽 聽 聽 聽 aHasRes := hash()
聽 聽 聽 聽 hb_jsondecode(response ,@aHasRes)

del lado del servidor

//DATOS DE AUTORIZACION BASICA DE CABECERA
$auto_usuario = $_SERVER["PHP_AUTH_USER"];
$auto_clave = $_SERVER["PHP_AUTH_PW"];

date_default_timezone_set('America/Bogota');

//recogemos los datos que vienen en el json
$datos = json_decode(file_get_contents("php://input"),true);

...
...
...

聽 聽 $retorno["error"] = "";
聽 聽 $retorno["registrado"]=true;
...
...
...

echo json_encode($retorno);
?>

y la consulta del usuario con qr

$articu = $_GET["arti"];
$serial = $_GET["seri"];

include("conecta.php");
$query = "SELECT * FROM regustri WHERE codigo_articulo='".$articu."' AND serial_articulo='".$serial."'";
$sqls = $conexion->prepare($query);
$sqls->execute();
$nro_reg = count($sqls->fetchall());
if($nro_reg==0){
聽 聽 echo "<h2>Art铆culo No Reportado</h2>";
}else{
聽 聽 echo "<h2>Datos Art铆culo Seguimiento </h2>";
聽 聽 $sqls = $conexion->prepare($query);
聽 聽 $sqls->execute();
聽 聽 while($row = $sqls->fetch()){
聽 聽 聽 聽 $consecu_traza = $row['consecutivo'];
聽 聽 聽 聽 echo "<table>";
聽 聽 聽 聽 echo "<tr>";
聽 聽 聽 聽 echo "<td>C贸digo Art铆culo : </td>";
聽 聽 聽 聽 echo "<td>".$row['codigo_articulo']."</td>";
聽 聽 聽 聽 echo "</tr>";
聽 聽 聽 聽 echo "<tr>";
聽 聽 聽 聽 echo "<td>Nombre Art铆culo : </td>";
聽 聽 聽 聽 echo "<td>".$row['nombre_articulo']."</td>";
聽 聽 聽 聽 echo "</tr>";聽 聽聽 聽 
聽 聽 聽 聽 echo "<tr>";
聽 聽 聽 聽 echo "<td>Serial Art铆culo : </td>";
聽 聽 聽 聽 echo "<td>".$row['serial_articulo']."</td>";
聽 聽 聽 聽 echo "</tr>";聽 聽聽 聽 聽 聽 
聽 聽 聽 聽 echo "<tr>";
聽 聽 聽 聽 echo "<td>Modelo : </td>";
聽 聽 聽 聽 echo "<td>".$row['modelo']."</td>";
聽 聽 聽 聽 echo "</tr>";聽 聽聽 聽 聽 聽 
聽 聽 聽 聽 echo "<tr>";
聽 聽 聽 聽 echo "<td>Lote : </td>";
聽 聽 聽 聽 echo "<td>".$row['lote']."</td>";
聽 聽 聽 聽 echo "</tr>";聽 聽聽 聽 聽 聽 
聽 聽 聽 聽 echo "<tr>";
聽 聽 聽 聽 echo "<td>Certificado No. : </td>";
聽 聽 聽 聽 echo "<td>".$row['certificado']."</td>";
聽 聽 聽 聽 echo "</tr>";聽 聽聽 聽 聽 聽 
聽 聽 聽 聽 echo "</table>";
聽 聽 }聽 聽
聽 聽 $sqls=null;聽
}聽 聽
$conexion = null;
Saludos
LEANDRO AREVALO
Bogot谩 (Colombia)
https://hymlyma.com
https://hymplus.com/
leandroalfonso111@gmail.com
leandroalfonso111@hotmail.com

[ Turbo Incremental Link64 6.98 Embarcadero 7.70 ] [ FiveWin 25.01 ] [ xHarbour 64 bits) ]
Posts: 719
Joined: Fri May 12, 2017 02:50 PM
Re: Consulta sobre uso de FW_BarCodeBmp
Posted: Fri Jul 08, 2022 05:29 PM

Hola Leandro.

Deseo que estes muy bien.

Muchas gracias por tu tiempo y dispocion a ayudarme.

Hoy revisare lo que me has enviado, a ver hasta donde logro entender y tratar de aplicar a lo que necesito.

Muchos Saludos y que estes muy bien.

Antonio

FWH 22.10 - HARBOUR - PELLES C

Continue the discussion