Seguimiento de envíos
[insert_php]
class ConexionPGSQL{
//declaración de variables
public $host; // para conectarnos a localhost o el ip del servidor de postgres
public $db; // seleccionar la base de datos que vamos a utilizar
public $user; // seleccionar el usuario con el que nos vamos a conectar
public $pass; // la clave del usuario
public $conexion; //donde se guardara la conexión
public $url; //dirección de la conexión que se usara para destruirla mas adelante
//creación del constructor
function __construct(){
}
//creación de la función para cargar los valores de la conexión.
public function cargarValores(){
$this->host=’172.17.2.211′;
$this->db=’fr’;
$this->user=’dba’;
$this->pass=’sql’;
$this->conexion=»host=’$this->host’ dbname=’$this->db’ user=’$this->user’ password=’$this->pass’ options=’–client_encoding=UTF8′»;
}
//función que se utilizara al momento de hacer la instancia de la clase
function conectar(){
$this->cargarValores();
$this->url=pg_connect($this->conexion);
return true;
}
//función para destruir la conexión.
function destruir(){
pg_close($this->url);
}
}
//instanciación de la clase conexión a postgresql.
if (isset($_POST[‘numero’])) {
$numero= pg_escape_string($_POST[‘numero’]);
} else {
$numero=»»;
}
if ($numero == NULL) {
Echo ‘Sin numero’;
echo ‘Volver‘;
exit;
}
$paisd = intval(substr($numero, 0,2));
$codord = intval(substr($numero, 2,5));
$ce = intval(substr($numero, 7,3));
$expe = intval(substr($numero, 10,9));
$ent = intval(substr($numero, 19,3));
$conexion = new ConexionPGSQL();
$conexion->conectar();
if($conexion->conectar()==true){
// Realizando una consulta SQL
$query = »
select
e.albremitente as expedicion,
e.codord,
trim(e.sreferencia) as referencia,
trim(remitente) as remitente,
trim(e.receptor) as Nombre,
e.codent as codicli,
trim(e.direccion) as direccion,
trim(e.postald) as Postal,
trim(e.poblacionentrega) as poblacion,
» as provincia,
cast (e.paisd as varchar(12)) as pais,
iso_pais.alfa2 nombre_paisalfa2,
iso_pais.nombre_pais,
CASE WHEN e.fregistro < '01/01/2013' THEN NULL ELSE to_char(e.fregistro, 'dd-mm-yyyy') END as Fecha_expe,
CASE WHEN e.fserv < '01/01/2013' THEN NULL ELSE to_char(e.fserv, 'dd-mm-yyyy') END as Fecha_repa,
CASE WHEN e.fasig < '01/01/2013' THEN NULL ELSE to_char(e.fasig, 'dd-mm-yyyy') END as fecha_asign,
CASE WHEN e.flleg < '01/01/2013' THEN NULL ELSE to_char(e.flleg, 'dd-mm-yyyy') END as fecha_llegada,
to_char(d.FRepPar, 'dd-mm-yyyy') as Fecha_reppar,
to_char(d.fechaentr, 'dd-mm-yyyy') as Fecha_entr,
to_char(d.fechasituentr, 'dd-mm-yyyy') as fecha_situ_entr,
to_char(d.FRepDev, 'dd-mm-yyyy') as Fecha_repdev,
to_char(d.FRepDevP, 'dd-mm-yyyy') as Fecha_repdevpar,
to_char(d.FRepReh, 'dd-mm-yyyy') as Fecha_repreh,
to_char(d.FExpeCan, 'dd-mm-yyyy') as Fecha_ExpeCan,
to_char(d.FRecAnu, 'dd-mm-yyyy') as Fecha_RecAnu,
to_char(d.FDevRec, 'dd-mm-yyyy') as Fecha_DevRec,
to_char(d.FDevOr, 'dd-mm-yyyy') as fecha_DevOr,
to_char(d.FOrdRec, 'dd-mm-yyyy') as fecha_OrdRec,
to_char(d.FRecEfe, 'dd-mm-yyyy') as fecha_RecEfe,
to_char(d.FRecRec, 'dd-mm-yyyy') as fecha_RecRec,
to_char(d.FAcepDev, 'dd-mm-yyyy') as fecha_AcepDev,
to_char(d.FAcepDevP, 'dd-mm-yyyy') as fecha_AcepDevP,
cast((blt + plt ) as int2) as bultos,
cast(blt as int2),
cast(plt as int2),
e.codrem as codiclirem,
e.postalo as postalrem,
'' as provinciarem,
origen as poblacionrem,
e.paiso as paiso,
f.alfa2 as nombre_alfa2o,
f.nombre_pais as nombre_paiso,
cast(e.pbruto as int2)as pbruto,
e.m3,
cast(e.ptasad as int2) as ptasad,
e.servicio,
e.observacionesentrega1 as observaciones,
e.reembolso,
trim(e.vehiculo) as vehiculo ,
CASE WHEN e.exped is null then 0 else e.exped end as exp_inter
from expedicionview e LEFT OUTER JOIN iso_pais ON e.paisd = iso_pais.codigo_educa
LEFT JOIN iso_pais as f ON e.paisd = f.codigo_educa
left JOIN cabpteprep c on c.identificador = e.sreferencia
LEFT JOIN expediciondate d on e.exped = d.exped
where
e.codord='$codord' and
e.exped='$expe' and e.ent=$ent and e.ce=$ce and e.paisd=$paisd";
$result = pg_query($query) or die('La consulta fallo: ' . pg_last_error());
$rows = pg_num_rows($result);
if ($rows <> 1) {
echo ‘Sin registros’;
echo ‘Volver‘;
exit;
}
// Imprimiendo los resultados en HTML
while ($line = pg_fetch_array($result, null, PGSQL_ASSOC)) {
echo «
echo «
Información del Envío
«;
echo «Nº Expedición: » .$line[‘expedicion’]. «
«;
echo «Referencia: » .$line[‘referencia’]. «
«;
echo «Remitente: » .$line[‘remitente’]. «
«;
echo «Destinatario: » .$line[‘nombre’]. «
«;
echo «Destino: » .$line[‘postal’].»-» .$line[‘poblacion’]. » (» .$line[‘nombre_paisalfa2’]. «)
«;
echo «Bultos: » .$line[‘bultos’]. «
«;
echo «Fecha de expedición: » .$line[‘fecha_expe’]. «
«;
echo «Observaciones: » .$line[‘observaciones’]. «
«;
echo «
\n»;
echo «
echo «
Situaciones del Envío
«;
echo «
Fecha | Situación |
» .$line[‘fecha_expe’]. « | Aceptada Expedición |
» .$line[‘fecha_ordrec’]. « | Orden de Recogida |
» .$line[‘fecha_recefe’]. « | Recogida Efectuada |
» .$line[‘fecha_recrec’]. « | Recogida Recibida |
» .$line[‘fecha_asign’]. « | En Transito |
» .$line[‘fecha_llegada’].» | En Reparto |
» .$line[‘fecha_situ_entr’]. « | Entrega Concertada » .$line[‘Fecha_entr’]. « |
» .$line[‘fecha_devrec’]. « | Devolución Recibida |
» .$line[‘fecha_devor’]. « | Devuelto a Origen |
» .$line[‘fecha_acepdev’]. « | Aceptan Devolución |
» .$line[‘fecha_acepdevp’]. « | Devolución Parcial |
» .$line[‘fecha_repa’]. « | Repartido |
» .$line[‘fecha_repdevpar’]. « | Repartida dev.parcial |
» .$line[‘fecha_repdev’]. « | Repartida Devolución |
» .$line[‘fecha_reppar’]. « | Repartido Parcial |
» .$line[‘fecha_repreh’]. « | Repartido con Rehuse |
» .$line[‘fecha_expecan’]. « | Expedición Cancelada |
» .$line[‘fecha_recanu’]. « | Recogida Anulada |
\n»;
echo «
\n»;
}
// Liberando el conjunto de resultados
pg_free_result($result);
// Cerrando la conexión
pg_close($conexion);
}else{
echo «no se pudo conectar»;
}
echo ‘‘;
[/insert_php]