PDA

Ver la Versión Completa : [Duda] Datos accesibles desde Internet


fastpho
1 de julio de 2019, 15:35
Buen dia foro : le planteo el problema que tengo , un cliente me esta pidiendo que quiere ver las ventas de la facturacion por internet es decir en su celular o desde su casa en una pc etc
Me podrian dar algun tips para resolver este planteo
Desde ya muchas gracias

Kuk
1 de julio de 2019, 20:48
fastpho, coge un Hosting de pago que permita acceso a la BBDD a distancia. Luego haz un simple sitio Web con un builder integrado, tipo Joomla o similar.

Cuando hagas facturación, o en un Batch programado, vas rellenando la BBDD desde tu programa.

fastpho
1 de julio de 2019, 22:54
Gracias Kuk por tu respuesta , actualmente trabajo con archivos indexados , deberia crear un a base de datos de la facturacion , y como hago para actualizarla a la web ?

Fito
1 de julio de 2019, 23:09
Hola:

La otra opción que tenés es hacer tu propio servidor web con cobhttpd ( COBTOOLS.COM - Tools for COBOL Programmers (www.cobtools.com) ) y hacer tu pagina html, tomando directamente los datos de tus archivos cobol.

Saludos.

Fito...

Jorgeanna
2 de julio de 2019, 01:52
en el Foro hay una libreria php que lee archivos powercobol directamente y a una velocidad increible, hay que leer un poco de php y html y lo unico que hay que hacer es subir los archivos a utilizar via ftp.
En mi caso utilizo ademas una libreria fpdf y tablesorter para mostrar los registros leidos.
En el zip hay un ejemplo simple, a partir de ahi vuestra imaginacion es el limite.

Roger
2 de julio de 2019, 06:01
Una alternativa simple es usar el teanviewer hay aplicativo para andriot lo puedes ver tu sistema en un celular y en otra pc desde cualquier lugar es gratuito pon con contraseña predeterminada.
Otra forma que uso para "consulta" es usando el one drive cada vez que ingreso o modificoun archivo copia la data al one drive sincroniso con mi correo y en otro computador instalo el sistema pero dirección de lectura de los archivo al one drive solo me sirve de lectura.

fastpho
2 de julio de 2019, 14:48
Se agradece todas las alternativas que me han dado , hare algunas pruebas con todas las opciones
Muchas gracias a todos

Kuk
2 de julio de 2019, 19:36
fastpho, manténnos informados de la opción elegida y nos cuentas que tal va la cosa ;)

Roger
4 de julio de 2019, 16:58
Hola:

La otra opción que tenés es hacer tu propio servidor web con cobhttpd ( COBTOOLS.COM - Tools for COBOL Programmers (www.cobtools.com) ) y hacer tu pagina html, tomando directamente los datos de tus archivos cobol.

Saludos.

Fito...

hola Fito usaba este servidor para consulta en nube pero desde que cambie a 64 bits dejo de funcionar alguna idea??

Fito
4 de julio de 2019, 20:45
Hola Roger:

En los dos clientes que probé (uno está funcionando y el otro ya no) están en 32 bits.

Yo lo tengo en mi notebook para probar con windows 10 de 64, y funciona, siempre de manera local nunca lo probé desde la web. Pero calculo que no debería haber problemas.
Le hiciste una consulta a Alberto Ortega Rojas?

Saludos.

Fito...

fastpho
17 de julio de 2019, 18:07
Buenas gente ....
Empece instalando wampserver para trabajar con el php haber como era el tema...
Y comence a leer un poco de php y el ejemplo que habia, resulta que hice una pruebas con un archivo de similares caracteristicas al del ejemplo "granos.dat" pero creado con pwcobol version 5 ,
lo que hace la rutina es buscar por indice o variable llamada $clave al principio todo bien encontraba el registro , resulta que a medida que hacia diferentes busquedas de acuerdo al indice del registro aumentaba su valor me daba como que el registro no existia.....
Jorgeanna me podrias mirar el codigo que puse haber en donde esta el problema


<HTML>
<HEAD>
<TITLE> Pruebas en PHP </TITLE>
<LINK REL="stylesheet" TYPE="text/css" HREF="estilo.css">
</HEAD>

<BODY>

<H1>lectura de archivo cobol</H1>
<form method='post' >
<p><input name='numero' type='text' /></p>
<p><input type='submit' value='enviar'></p>
</form>
<?php
require("RmFile.php");
require("wenteje.php");

// $datos= "Datos";
// $clave="0001";

echo ("esta es la clave ") . $_POST['numero'];
$clave = $_POST['numero'];

echo ("--------");


//------------------------WEMAES.DAT--------------------
$iFile = new RmFile("RUBROS.DNX",wenteje::lectura(),".");
// muestra un determinado registro
if ($iFile->find($clave,0)){
if ($reg = $iFile->next()){
// var_dump($reg);
print_r($reg);
echo "-------------lo encontro...................";
// if ($reg["wmid"]->Value == "10"){
}else{
echo "no en el next";
}
}else{
echo "no en el find";
}
echo "---------------------------------- MUESTRA TODO EL REGISTRO --------------------";
// muestra todo el registro completo
if ($iFile->find($clave,0)){
while ($reg = $iFile->next())

print_r($reg);
echo "----------------------------------";

//endwhile;
}


?>

</BODY>
</HTML>

Jorgeanna
18 de julio de 2019, 04:46
Para mejor respuesta a tu pregunta, subi un archivo con un ejemplo mas didactico de como se puede utilizar la rutina en php para leer archivos cobol desde la web sin pasar los datos a texto y luego leerlo en mysql. LO UNICO QUE HAY QUE HACER ES LEER Y MOSTRAR LOS RESULTADOS.

Quiero dejar aclarado que no soy el autor de la libreria, me la suministro gentilmente el Sr. JOSE KOBER y ademas me ayudo a ponerla en practica.

Oportunamente vi que la solicitaba Fito y se la envie con la observacion de que si la compartiera hiciera mencion a su creador, pero bueno la publico y ni siquiera dijo recordar quien se la habia enviado, por eso pido por favor demos el credito a quien desinteresadamente suministro esta poderosa libreria.

En el comprimido van una serie de pantallas que estan corriendo en la web, con resultados extraidos directamente desde los archivos enviados por ftp, que se actualiza automaticamente al salir de la aplicacion.

Un demo que hice oportunamente para una presentacion de reconocimiento de ultrasonido podran observar en el siguiente Menu Demo USE (http://ecografiasbovinas.com.ar/demo/#)

Por ultimo quiero decirles que el tiempo que le dediquen a su implementacion seguro estara ampliamente compensado.

fastpho
18 de julio de 2019, 16:30
Muchas Gracias Jorgeanna y tambien a el Sr JOSE KOBER , por su tiempo
seguire haciendo pruebas y subire los resultados para que otras personas puedan utilizar esta libreria para implementar en sus sistemas

Joseg
18 de julio de 2019, 17:52
Para mejor respuesta a tu pregunta, subi un archivo con un ejemplo mas didactico de como se puede utilizar la rutina en php para leer archivos cobol desde la web sin pasar los datos a texto y luego leerlo en mysql. LO UNICO QUE HAY QUE HACER ES LEER Y MOSTRAR LOS RESULTADOS.

Quiero dejar aclarado que no soy el autor de la libreria, me la suministro gentilmente el Sr. JOSE KOBER y ademas me ayudo a ponerla en practica.

Oportunamente vi que la solicitaba Fito y se la envie con la observacion de que si la compartiera hiciera mencion a su creador, pero bueno la publico y ni siquiera dijo recordar quien se la habia enviado, por eso pido por favor demos el credito a quien desinteresadamente suministro esta poderosa libreria.

En el comprimido van una serie de pantallas que estan corriendo en la web, con resultados extraidos directamente desde los archivos enviados por ftp, que se actualiza automaticamente al salir de la aplicacion.

Un demo que hice oportunamente para una presentacion de reconocimiento de ultrasonido podran observar en el siguiente Menu Demo USE (http://ecografiasbovinas.com.ar/demo/#)

Por ultimo quiero decirles que el tiempo que le dediquen a su implementacion seguro estara ampliamente compensado.



Muito interessante.
Esta libraria consegue ler qualquer arquivo indexado? Não necessita de runtime do Fujitsu Cobol?
Consegue interpretar campos COMP ?

Jorgeanna
19 de julio de 2019, 01:14
No se necesita el runtime del powerCOBOL, y segun tengo entendido es compatible con campos comp, habria que ver si la rutina esta actualizada. Aclaro que no los he utilizado.

los tipos a declarar serian I,S,C,D, no es necesario delarar la totalidad de los campos sino los que se van a utilizar su ubicacion y largo.

Pueden probar con cualquier archivo que tengan, con solo hacer muy pocos cambios al ejemplo enviado pueden ver los resultados inmediatamente

Tengan en cuenta que si lo suben en un servidor web, mantengan los nombres de archivo en minusculas, ya que lo que anda en local cuando se sube a la web no anda y este fue uno de mis primeros dolores de cabeza.

Para quien tenga alguna duda, se puede hacer de todo menos grabar, el resto funciona de maravilla y por eso digo que depende de las ganas de aprender a utilizar esta herramienta, que hace tiempo esta en el foro y nadie le metio mano.

Saludos y suerte.

fastpho
30 de agosto de 2019, 16:50
Ejemplo de la rutina php con archivos indexados en pwc 5
La rutina muestra los archivos rapidamente , tiene problema con campos con signo
Y he tenido problemas para poder leer un registro en particular esta detallado en el index.php
en el adjunto van dos archivos de cobol y un print-screen del listado de rubros en pwc
Saludos

Jorgeanna
2 de septiembre de 2019, 01:54
Ejemplo de la rutina php con archivos indexados en pwc 5
La rutina muestra los archivos rapidamente , tiene problema con campos con signo
Y he tenido problemas para poder leer un registro en particular esta detallado en el index.php
en el adjunto van dos archivos de cobol y un print-screen del listado de rubros en pwc
Saludos

1. La rutina no tiene problemas. El problema consiste en que declaras un campo numerico como string. Cambia 'S' por 'I' y te va andar, luego formatearas el resultado de salida, tambien podes probar con campos tipo 'E' y 'D' -> 2 decimal.

Los inconvenientes fueron sorteados solamente con cambiar el tipo de dato de la variable y paso andar todo como estaba previsto.

Por mi experiencia, los problemas que se presentas es por desconocimiento del usuario y no de la rutina.

Podes ver el listado enviado en el zip en la siguiente direccion web que es donde hice la prueba ya que hoy domingo no accedo a mi oficina:

http://veterinariatejedo.com.ar/prueba/index.php

se le agrego un css para ver mejor la tabla.
Suerte!

fastpho
2 de septiembre de 2019, 16:16
Jorgeanna, Primero antes que todo gracias por contestar un dia domingo ,
Realice los cambios de que me marcaste (cambie la variable string "S" POR "I" integer) y ahora me muestra el listado y el error que tenia para buscar algun registro en particular no lo estaba poniendo entre comillas a la variable de busqueda y ahora me encuentra el registro.
Con respecto al comentario que pruebe de poner campos tipo 'E' y 'D' -> 2 decimal lo hice pero me da error y estuve mirando la funcion seteo campos y no tiene en el case el tipo "E"
y si le coloco "D" me un error Notice: Undefined property: stdClass::$decimal in C:\wamp64\www\php\RmFile.php on line 672

class fd_rubros{
public static function get(){
$fd_rubros["rubcodigo"] = (Object) array ("desde" => 1 , "cant" => 4 , "tipo"=>"I");
$fd_rubros["rubnombre"] = (Object) array ("desde" => 5 , "cant" => 30 , "tipo"=>"S");
$fd_rubros["rubmargenmin"] = (Object) array ("desde" => 35 , "cant" => 5 , "tipo"=>"I");
$fd_rubros["rubmargenmay"] = (Object) array ("desde" => 40 , "cant" => 5 , "tipo"=>"I");
$fd_rubros["rubacumulado"] = (Object) array ("desde" => 45 , "cant" => 11 , "tipo"=>"D" , "decimal"=>2);


return $fd_rubros;
}
}
Esta es la linea 672 return (float) substr($a,0,strlen($a)- $v->decimal).",".substr($a ,($v->decimal * - 1));

Funcio Seteo Campos

protected function SeteoCampos($mBuff,$v){
switch ($v->tipo) {
case "I":
return (integer) $this->Substr($mBuff,$v->desde-1,$v->cant);
break;
case "S":
return $this->Substr($mBuff,$v->desde-1,$v->cant);
break;
case "D":
$a =$this->Substr($mBuff,$v->desde-1,$v->cant);
return (float) substr($a,0,strlen($a)- $v->decimal).",".substr($a ,($v->decimal * - 1));
// return NULL;
break;
}
return NULL;
}