1290 lines
40 KiB
C++
1290 lines
40 KiB
C++
//---------------------------------------------------------------------------
|
||
#include <vcl.h>
|
||
#pragma hdrstop
|
||
|
||
//---------------------------------------------------------------------------
|
||
#include "Principal.h"
|
||
#include "Dialogo.h"
|
||
|
||
//---------------------------------------------------------------------------
|
||
#pragma package(smart_init)
|
||
#pragma resource "*.dfm"
|
||
TForm1 *Form1;
|
||
TAutorizacion *Autorizacion;
|
||
TPesoEntrada *PesoEntrada;
|
||
TPesoSalida *PesoSalida;
|
||
TAlbaran *Albaran;
|
||
TTransfer *Transfer;
|
||
|
||
//---------------------------------------------------------------------------
|
||
__fastcall TForm1::TForm1(TComponent* Owner) : TForm(Owner)
|
||
{
|
||
//Pedimos memoria para la clase Autorizacion
|
||
Autorizacion = new TAutorizacion();
|
||
//Pedimos memoria para la clase Peso Entrada
|
||
PesoEntrada = new TPesoEntrada();
|
||
//Pedimos memoria para la clase Peso Salida
|
||
PesoSalida = new TPesoSalida();
|
||
//Pedimos memoria para la clase de Albaran
|
||
Albaran = new TAlbaran();
|
||
//Pedimos memoria para la clase de Transfer
|
||
Transfer = new TTransfer();
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
__fastcall TForm1::~TForm1()
|
||
{
|
||
//liberamos las clases
|
||
delete Autorizacion;
|
||
delete PesoEntrada;
|
||
delete PesoSalida;
|
||
delete Albaran;
|
||
delete Transfer;
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::Salir1Click(TObject *Sender)
|
||
{
|
||
Close();
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::ConductorClick(TObject *Sender)
|
||
{
|
||
int nError;
|
||
|
||
//Mostramos el Label y Edit
|
||
Label1->Visible=true;
|
||
Edit1->Visible=true;
|
||
Edit1->MaxLength=4;
|
||
Edit1->SetFocus();
|
||
|
||
//Asignamos a la opcion la de conductor
|
||
byOpcion=OpConductor;
|
||
|
||
if(strcmp(sDatoTecleado,""))
|
||
{
|
||
//Comprobamos el Conductor
|
||
nError=Autorizacion->ComprobarConductor(sDatoTecleado,hBaseDatos);//"1151"
|
||
if(nError!=AUT_CON_CORRECTO)
|
||
MuestraError(nError);
|
||
else
|
||
{
|
||
MuestraLista("CONDUCTOR");
|
||
ShowMessage("Fue todo correcto");
|
||
}
|
||
}
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void TForm1::MuestraError(int Error)
|
||
{
|
||
char scadena[100];
|
||
|
||
strcpy(scadena,"Se produjo un Error: ");
|
||
switch(Error)
|
||
{
|
||
case 1:
|
||
strcat(scadena,"AUT_CON_VALOR_NO_ENCONTRADO");
|
||
break;
|
||
case 2:
|
||
strcat(scadena,"AUT_CON_BORRADO");
|
||
break;
|
||
case 3:
|
||
strcat(scadena,"AUT_CON_CARNET_CADUCADO");
|
||
break;
|
||
case 4:
|
||
strcat(scadena,"AUT_CON_ADR_CADUCADO");
|
||
break;
|
||
case 5:
|
||
strcat(scadena,"AUT_CON_EN_PROCESO");
|
||
break;
|
||
case 6:
|
||
strcat(scadena,"AUT_CIS_VALOR_NO_ENCONTRADO");
|
||
break;
|
||
case 7:
|
||
strcat(scadena,"AUT_CIS_BORRADO");
|
||
break;
|
||
case 8:
|
||
strcat(scadena,"AUT_CIS_TARJETA_CADUCADA");
|
||
break;
|
||
case 9:
|
||
strcat(scadena,"AUT_CIS_ADR_CADUCADO");
|
||
break;
|
||
case 10:
|
||
strcat(scadena,"AUT_CIS_ITV_CADUCADO");
|
||
break;
|
||
case 11:
|
||
strcat(scadena,"AUT_CIS_SEGURO_CADUCADO");
|
||
break;
|
||
case 12:
|
||
strcat(scadena,"AUT_TRA_VALOR_NO_ENCONTRADO");
|
||
break;
|
||
case 13:
|
||
strcat(scadena,"AUT_TRA_BORRADO");
|
||
break;
|
||
case 14:
|
||
strcat(scadena,"AUT_TRA_TARJETA_CADUCADA");
|
||
break;
|
||
case 15:
|
||
strcat(scadena,"AUT_TRA_ADR_CADUCADO");
|
||
break;
|
||
case 16:
|
||
strcat(scadena,"AUT_TRA_ITV_CADUCADO");
|
||
break;
|
||
case 17:
|
||
strcat(scadena,"AUT_TRA_SEGURO_CADUCADO");
|
||
break;
|
||
case 18:
|
||
strcat(scadena,"AUT_SUM_VALOR_NO_ENCONTRADO");
|
||
break;
|
||
case 19:
|
||
strcat(scadena,"AUT_SUM_BORRADO");
|
||
break;
|
||
case 20:
|
||
strcat(scadena,"AUT_ORC_VALOR_NO_ENCONTRADO");
|
||
break;
|
||
case 21:
|
||
strcat(scadena,"AUT_ORC_BORRADO");
|
||
break;
|
||
case 22:
|
||
strcat(scadena,"AUT_ORC_ESTADO_ACABADO");
|
||
break;
|
||
case 23:
|
||
strcat(scadena,"AUT_ORC_SUM_OTRA_ORDEN");
|
||
break;
|
||
case 24:
|
||
strcat(scadena,"AUT_ORC_CIS_OTRA_ORDEN");
|
||
break;
|
||
case 25:
|
||
strcat(scadena,"AUT_ORC_FECHA_MENOR_QUE_HOY");
|
||
break;
|
||
case 26:
|
||
strcat(scadena,"AUT_ORL_VALOR_NO_ENCONTRADO");
|
||
break;
|
||
case 27:
|
||
strcat(scadena,"AUT_PRO_VALOR_NO_ENCONTRADO");
|
||
break;
|
||
case 28:
|
||
strcat(scadena,"AUT_PRM_PROD_MAYOR_PERMITIDO");
|
||
break;
|
||
case 29:
|
||
strcat(scadena,"AUT_PRM_PROD_MAYOR_CAP_CIS");
|
||
break;
|
||
case 30:
|
||
strcat(scadena,"AUT_PRM_PESO_MAYOR_CAP_TRA");
|
||
break;
|
||
|
||
|
||
case 250:
|
||
strcat(scadena,"ERROR_INTERNO");
|
||
break;
|
||
|
||
}
|
||
ShowMessage(scadena);
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::FormCreate(TObject *Sender)
|
||
{
|
||
ComprobarNomFichError("PruebaError.txt");
|
||
//Generamos un Error de prueba en el fichero pruebaError.txt
|
||
GenerarError("Prueba de Error");
|
||
//Inicializamos el BDE
|
||
InicializarBDE("IDAPI.CFG");
|
||
//Conectamos al BDE
|
||
ConectarBDE("ESERGUI",&hBaseDatos);
|
||
//Pedimos memoria para sus variables
|
||
Autorizacion->ReservarMemoriaEstructura(hBaseDatos);
|
||
//Pedimos memoria para las variables de peso entrada
|
||
PesoEntrada->ReservarMemoriaEstructura(hBaseDatos);
|
||
//Pedimos memoria para las variables de peso entrada
|
||
PesoSalida->ReservarMemoriaEstructura(hBaseDatos);
|
||
//Pedimos memoria para las variables de Albaranes
|
||
Albaran->ReservarMemoriaEstructura(hBaseDatos);
|
||
//Inicializamos variable
|
||
Transfer->InicializarEstructuraTransfer();
|
||
//Inicializamos el codigo de teclado
|
||
strcpy(sDatoTecleado,"");
|
||
byOpcion=0;
|
||
bTodos=false;
|
||
//Inicializamos los HANDLE de los Threads
|
||
HDAUT=NULL;
|
||
HDPSE=NULL;
|
||
HDPSS=NULL;
|
||
HDALB=NULL;
|
||
HDContadores=NULL;
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::FormClose(TObject *Sender, TCloseAction &Action)
|
||
{
|
||
//Finalizamos los Threads
|
||
TerminarThread(HDAUT);
|
||
TerminarThread(HDPSE);
|
||
TerminarThread(HDPSS);
|
||
TerminarThread(HDALB);
|
||
TerminarThread(HDContadores);
|
||
//Liberamos la memoria de las variables de la estructura
|
||
Autorizacion->LiberarEstructura();
|
||
//Liberamos memoria de Peso de entrada
|
||
PesoEntrada->LiberarEstructura();
|
||
//Liberamos memoria de Peso de salida
|
||
PesoSalida->LiberarEstructura();
|
||
//Liberamos memoria del Albaran
|
||
Albaran->LiberarEstructura();
|
||
//Desconectamoel el BDE
|
||
DesconectarBDE (hBaseDatos);
|
||
//Finalizamos el BDE
|
||
FinalizarBDE();
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::InformacionEstructura1Click(TObject *Sender)
|
||
{
|
||
BYTE i;
|
||
int POSX,POSY;
|
||
char scadena[50];
|
||
DatosAutorizacion sDatos;
|
||
|
||
Autorizacion->LeerEstructura(&sDatos);
|
||
//Cargamos Paneles de campo
|
||
for(i=0;i<N_TABLA;i++)
|
||
{
|
||
Panel[i] = new TPanel(this);
|
||
Panel[i]->Parent=this;
|
||
Panel[i]->Top=0;
|
||
Panel[i]->Left=i*100;
|
||
Panel[i]->Width=100;
|
||
Panel[i]->Height=20;
|
||
Panel[i]->Enabled=true;
|
||
Panel[i]->Visible=true;
|
||
switch(i)
|
||
{
|
||
case 0: strcpy(scadena,"CONDUCTOR");
|
||
break;
|
||
case 1: strcpy(scadena,"CISTERNA");
|
||
break;
|
||
case 2: strcpy(scadena,"TRACTOR");
|
||
break;
|
||
case 3: strcpy(scadena,"SUMINISTRADOR");
|
||
break;
|
||
case 4: strcpy(scadena,"PEDIDOS");
|
||
break;
|
||
}
|
||
Panel[i]->Caption=scadena;
|
||
}
|
||
//Cargamos clases
|
||
for(i=i;i<(N_TABLA+N_CAMPO);i++)
|
||
{
|
||
//Cargamos los paneles y le damos la posicion y el tama<6D>o
|
||
Panel[i] = new TPanel(this);
|
||
Panel[i]->Parent=this;
|
||
if((i-N_TABLA)<N_CON)
|
||
{
|
||
POSX=0;
|
||
POSY=(i-N_TABLA+1)*20;
|
||
}
|
||
else if( ( i-( N_TABLA+N_CON ) )< N_CIS)
|
||
{
|
||
POSX=100;
|
||
POSY=(((i-N_TABLA+1)-N_CON)*20);
|
||
}
|
||
else if( ( i-( N_TABLA+N_CON+N_CIS ) )< N_TRA)
|
||
{
|
||
POSX=200;
|
||
POSY=((i-N_TABLA+1)-(N_CON+N_CIS))*20;
|
||
}
|
||
else if( ( i-( N_TABLA+N_CON+N_CIS+N_TRA ) )< N_SUM)
|
||
{
|
||
POSX=300;
|
||
POSY=(((i-N_TABLA+1)-(N_CON+N_CIS+N_TRA))*20);
|
||
}
|
||
else if( ( i-( N_TABLA+N_CON+N_CIS+N_TRA+N_SUM ) )< N_PED)
|
||
{
|
||
POSX=400;
|
||
POSY=(((i-N_TABLA+1)-(N_CON+N_CIS+N_TRA+N_SUM))*20);
|
||
}
|
||
|
||
Panel[i]->Left=POSX;
|
||
Panel[i]->Top=POSY;
|
||
|
||
|
||
Panel[i]->Width=100;
|
||
Panel[i]->Height=20;
|
||
Panel[i]->Enabled=true;
|
||
Panel[i]->Visible=true;
|
||
//Copiamos scadenas en los paneles segun corresponda
|
||
switch(i)
|
||
{
|
||
//Paneles del conductor
|
||
case N_TABLA:
|
||
strcpy(scadena,sDatos.pszCodigoCon);
|
||
break;
|
||
case (N_TABLA+1):
|
||
strcpy(scadena,sDatos.pszCadCarnetCon);
|
||
break;
|
||
case (N_TABLA+2):
|
||
strcpy(scadena,sDatos.pszCadADRCon);
|
||
break;
|
||
case (N_TABLA+3):
|
||
strcpy(scadena,sDatos.pszNombreCon);
|
||
break;
|
||
case (N_TABLA+4):
|
||
strcpy(scadena,sDatos.pszCarnetCon);
|
||
break;
|
||
case (N_TABLA+5):
|
||
strcpy(scadena,sDatos.pszInternoCon);
|
||
break;
|
||
case (N_TABLA+6):
|
||
BoolACadena(sDatos.bBorradoCon,scadena);
|
||
break;
|
||
case (N_TABLA+7):
|
||
itoa(sDatos.nResultadoCon,scadena,10);
|
||
break;
|
||
|
||
//Paneles de la cisterna
|
||
case (N_TABLA+8):
|
||
strcpy(scadena,sDatos.pszCodigoCis);
|
||
break;
|
||
case (N_TABLA+9):
|
||
strcpy(scadena,sDatos.pszCadTarjetaCis);
|
||
break;
|
||
case (N_TABLA+10):
|
||
strcpy(scadena,sDatos.pszCadADRCis);
|
||
break;
|
||
case (N_TABLA+11):
|
||
strcpy(scadena,sDatos.pszCadITVCis);
|
||
break;
|
||
case (N_TABLA+12):
|
||
strcpy(scadena,sDatos.pszCadSeguroCis);
|
||
break;
|
||
case (N_TABLA+13):
|
||
strcpy(scadena,sDatos.pszInternoCis);
|
||
break;
|
||
case (N_TABLA+14):
|
||
strcpy(scadena,sDatos.pszTaraCis);
|
||
break;
|
||
case (N_TABLA+15):
|
||
strcpy(scadena,sDatos.pszBrutoCis);
|
||
break;
|
||
case (N_TABLA+16):
|
||
strcpy(scadena,sDatos.pszsVolumenCis[0]);
|
||
break;
|
||
case (N_TABLA+17):
|
||
strcpy(scadena,sDatos.pszsVolumenCis[1]);
|
||
break;
|
||
case (N_TABLA+18):
|
||
strcpy(scadena,sDatos.pszsVolumenCis[2]);
|
||
break;
|
||
case (N_TABLA+19):
|
||
strcpy(scadena,sDatos.pszsVolumenCis[3]);
|
||
break;
|
||
case (N_TABLA+20):
|
||
strcpy(scadena,sDatos.pszsVolumenCis[4]);
|
||
break;
|
||
case (N_TABLA+21):
|
||
strcpy(scadena,sDatos.pszsVolumenCis[5]);
|
||
break;
|
||
case (N_TABLA+22):
|
||
strcpy(scadena,sDatos.pszsVolumenCis[6]);
|
||
break;
|
||
case (N_TABLA+23):
|
||
strcpy(scadena,sDatos.pszsVolumenCis[7]);
|
||
break;
|
||
case (N_TABLA+24):
|
||
strcpy(scadena,sDatos.pszsVolumenCis[8]);
|
||
break;
|
||
case (N_TABLA+25):
|
||
strcpy(scadena,sDatos.pszCamionCis);
|
||
break;
|
||
case (N_TABLA+26):
|
||
BoolACadena(sDatos.bBorradoCon,scadena);
|
||
break;
|
||
case (N_TABLA+27):
|
||
itoa(sDatos.nResultadoCis,scadena,10);
|
||
break;
|
||
|
||
//Paneles del tractor
|
||
case (N_TABLA+28):
|
||
strcpy(scadena,sDatos.pszMatriculaTra);
|
||
break;
|
||
case (N_TABLA+29):
|
||
strcpy(scadena,sDatos.pszCadTarjetaTra);
|
||
break;
|
||
case (N_TABLA+30):
|
||
strcpy(scadena,sDatos.pszCadADRTra);
|
||
break;
|
||
case (N_TABLA+31):
|
||
strcpy(scadena,sDatos.pszCadITVTra);
|
||
break;
|
||
case (N_TABLA+32):
|
||
strcpy(scadena,sDatos.pszCadSeguroTra);
|
||
break;
|
||
case (N_TABLA+33):
|
||
strcpy(scadena,sDatos.pszInternoTra);
|
||
break;
|
||
case (N_TABLA+34):
|
||
strcpy(scadena,sDatos.pszTaraTra);
|
||
break;
|
||
case (N_TABLA+35):
|
||
strcpy(scadena,sDatos.pszBrutoTra);
|
||
break;
|
||
case (N_TABLA+36):
|
||
BoolACadena(sDatos.bBorradoCon,scadena);
|
||
break;
|
||
case (N_TABLA+37):
|
||
itoa(sDatos.nResultadoTra,scadena,10);
|
||
break;
|
||
|
||
//Paneles del Suministrador
|
||
case (N_TABLA+38):
|
||
strcpy(scadena,sDatos.pszCodigoSum);
|
||
break;
|
||
case (N_TABLA+39):
|
||
strcpy(scadena,sDatos.pszNombreSum);
|
||
break;
|
||
case (N_TABLA+40):
|
||
BoolACadena(sDatos.bBorradoSum,scadena);
|
||
break;
|
||
case (N_TABLA+41):
|
||
itoa(sDatos.nResultadoSum,scadena,10);
|
||
break;
|
||
|
||
//Paneles de los Pedidos
|
||
case (N_TABLA+42):
|
||
strcpy(scadena,sDatos.sOrden[0].pszMatriculaCisOrd);
|
||
break;
|
||
case (N_TABLA+43):
|
||
strcpy(scadena,sDatos.sOrden[0].pszCodigoSumOrd);
|
||
break;
|
||
case (N_TABLA+44):
|
||
strcpy(scadena,sDatos.sOrden[0].pszNumeroOrd);
|
||
break;
|
||
case (N_TABLA+45):
|
||
strcpy(scadena,sDatos.sOrden[0].pszNombreDesOrd);
|
||
break;
|
||
case (N_TABLA+46):
|
||
itoa(sDatos.sOrden[0].nResultadoOrd,scadena,10);
|
||
break;
|
||
|
||
}
|
||
Panel[i]->Caption=scadena;
|
||
}
|
||
//liberamos clases
|
||
ShowMessage("Estos son los resultados");
|
||
for(i=0;i<(N_TABLA+N_CAMPO);i++)
|
||
delete Panel[i];
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::CisternaClick(TObject *Sender)
|
||
{
|
||
int nError;
|
||
|
||
//Mostramos el Label y Edit
|
||
Label1->Visible=true;
|
||
Edit1->Visible=true;
|
||
Edit1->MaxLength=4;
|
||
Edit1->SetFocus();
|
||
|
||
//Asignamos a la opcion la de conductor
|
||
byOpcion=OpCisterna;
|
||
|
||
if(strcmp(sDatoTecleado,""))
|
||
{
|
||
nError=Autorizacion->ComprobarCisterna(sDatoTecleado,hBaseDatos);//"0602"
|
||
if(nError!=AUT_CIS_CORRECTO)
|
||
MuestraError(nError);
|
||
else
|
||
{
|
||
MuestraLista("CISTERNA");
|
||
ShowMessage("Fue todo correcto");
|
||
}
|
||
}
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void TForm1::BoolACadena(bool bVariable,char *pscadena)
|
||
{
|
||
if(bVariable)
|
||
strcpy(pscadena,"true");
|
||
else
|
||
strcpy(pscadena,"false");
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::TractorClick(TObject *Sender)
|
||
{
|
||
int nError;
|
||
|
||
//Mostramos el Label y Edit
|
||
Label1->Visible=true;
|
||
Edit1->Visible=true;
|
||
Edit1->MaxLength=10;
|
||
Edit1->SetFocus();
|
||
|
||
//Asignamos a la opcion la de conductor
|
||
byOpcion=OpTractor;
|
||
|
||
if(strcmp(sDatoTecleado,""))
|
||
{
|
||
nError=Autorizacion->ComprobarTractor(sDatoTecleado,NULL,hBaseDatos);//"NA-0664-AL"
|
||
if(nError!=AUT_TRA_CORRECTO)
|
||
MuestraError(nError);
|
||
else
|
||
{
|
||
MuestraLista("TRACTOR");
|
||
ShowMessage("Fue todo correcto");
|
||
}
|
||
}
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::SuministradorClick(TObject *Sender)
|
||
{
|
||
int nError;
|
||
|
||
//Mostramos el Label y Edit
|
||
Label1->Visible=true;
|
||
Edit1->Visible=true;
|
||
Edit1->MaxLength=1;
|
||
Edit1->SetFocus();
|
||
|
||
//Asignamos a la opcion la de conductor
|
||
byOpcion=OpSuministrador;
|
||
|
||
if(strcmp(sDatoTecleado,""))
|
||
{
|
||
nError=Autorizacion->ComprobarSuministrador(sDatoTecleado,hBaseDatos);//"1"
|
||
if(nError!=AUT_SUM_CORRECTO)
|
||
MuestraError(nError);
|
||
else
|
||
{
|
||
MuestraLista("SUMINISTRADOR");
|
||
ShowMessage("Fue todo correcto");
|
||
}
|
||
}
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::PedidosClick(TObject *Sender)
|
||
{
|
||
int nError;
|
||
|
||
//Mostramos el Label y Edit
|
||
Label1->Visible=true;
|
||
Edit1->Visible=true;
|
||
Edit1->MaxLength=5;
|
||
Edit1->SetFocus();
|
||
|
||
//Asignamos a la opcion la de conductor
|
||
byOpcion=OpPedidos;
|
||
|
||
if(strcmp(sDatoTecleado,""))
|
||
{
|
||
nError=Autorizacion->ComprobarPedidos(sDatoTecleado,hBaseDatos);//"10000"
|
||
if(nError!=AUT_ORC_CORRECTO)
|
||
MuestraError(nError);
|
||
else
|
||
{
|
||
MuestraLista("PEDIDO");
|
||
ShowMessage("Fue todo correcto");
|
||
}
|
||
}
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::TodosClick(TObject *Sender)
|
||
{
|
||
|
||
bTodos=true;
|
||
|
||
if(!byOpcion)
|
||
ConductorClick(Sender);
|
||
else if(byOpcion==OpConductor)
|
||
CisternaClick(Sender);
|
||
else if(byOpcion==OpCisterna)
|
||
TractorClick(Sender);
|
||
else if(byOpcion==OpTractor)
|
||
SuministradorClick(Sender);
|
||
else if(byOpcion==OpSuministrador)
|
||
{
|
||
PedidosClick(Sender);
|
||
bTodos=false;
|
||
}
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void TForm1::MuestraLista(char *cadena)
|
||
{
|
||
int i,j;
|
||
char scadena[100];
|
||
DatosAutorizacion sDatos;
|
||
|
||
ListBox1->Clear();
|
||
Autorizacion->LeerEstructura(&sDatos);
|
||
|
||
if(!strcmp("CONDUCTOR",cadena))
|
||
{
|
||
strcpy(scadena,"CONDUCTOR");
|
||
ListBox1->Items->Add(scadena);
|
||
BoolACadena(sDatos.bBorradoCon,scadena);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszCadCarnetCon);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszCadADRCon);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszNombreCon);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszCarnetCon);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszInternoCon);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszCodigoCon);
|
||
ListBox1->Items->Add(scadena);
|
||
itoa(sDatos.nResultadoCon,scadena,10);
|
||
ListBox1->Items->Add(scadena);
|
||
}
|
||
|
||
if(!strcmp("CISTERNA",cadena))
|
||
{
|
||
strcpy(scadena,"CISTERNA");
|
||
ListBox1->Items->Add(scadena);
|
||
BoolACadena(sDatos.bBorradoCon,scadena);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszNumeroEjesCis);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszCadTarjetaCis);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszCadADRCis);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszCadITVCis);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszCadSeguroCis);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszInternoCis);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszTaraCis);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszBrutoCis);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszCamionCis);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszMatriculaCis);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszCodigoCis);
|
||
ListBox1->Items->Add(scadena);
|
||
for(i=0;i<NUM_MAXIMO_COMPARTIMENTO;i++)
|
||
{
|
||
strcpy(scadena,sDatos.pszsVolumenCis[i]);
|
||
ListBox1->Items->Add(scadena);
|
||
}
|
||
itoa(sDatos.nResultadoCis,scadena,10);
|
||
ListBox1->Items->Add(scadena);
|
||
}
|
||
|
||
if(!strcmp("TRACTOR",cadena))
|
||
{
|
||
strcpy(scadena,"TRACTOR");
|
||
ListBox1->Items->Add(scadena);
|
||
BoolACadena(sDatos.bBorradoTra,scadena);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszNumeroEjesTra);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszCadTarjetaTra);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszCadADRTra);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszCadITVTra);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszCadSeguroTra);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszInternoTra);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszTaraTra);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszBrutoTra);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszMatriculaTra);
|
||
ListBox1->Items->Add(scadena);
|
||
itoa(sDatos.nResultadoTra,scadena,10);
|
||
ListBox1->Items->Add(scadena);
|
||
}
|
||
|
||
if(!strcmp("SUMINISTRADOR",cadena))
|
||
{
|
||
strcpy(scadena,"SUMINISTRADOR");
|
||
ListBox1->Items->Add(scadena);
|
||
BoolACadena(sDatos.bBorradoSum,scadena);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszCodigoSum);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.pszNombreSum);
|
||
ListBox1->Items->Add(scadena);
|
||
itoa(sDatos.nResultadoSum,scadena,10);
|
||
ListBox1->Items->Add(scadena);
|
||
|
||
}
|
||
|
||
if(!strcmp("PEDIDO",cadena))
|
||
{
|
||
strcpy(scadena,"PEDIDO");
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.sOrden[0].pszMatriculaCisOrd);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.sOrden[0].pszCodigoSumOrd);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.sOrden[0].pszNumeroOrd);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.sOrden[0].pszNombreDesOrd);
|
||
ListBox1->Items->Add(scadena);
|
||
itoa(sDatos.sOrden[0].nResultadoOrd,scadena,10);
|
||
ListBox1->Items->Add(scadena);
|
||
}
|
||
|
||
if(!strcmp("PESO",cadena))
|
||
{
|
||
i=0;
|
||
j=0;
|
||
while(!sDatos.sOrden[i].sLinea[j].nResultadoPesoCarga)
|
||
{
|
||
strcpy(scadena,"PESO TOTAL DE CARGA");
|
||
ListBox1->Items->Add(scadena);
|
||
itoa(sDatos.sOrden[i].nPesoOrd,scadena,10);
|
||
ListBox1->Items->Add(scadena);
|
||
for(j=0;j<NUM_MAXIMO_LINEAS;j++)
|
||
{
|
||
itoa(sDatos.sOrden[i].sLinea[j].nPesoPro,scadena,10);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.sOrden[i].sLinea[j].pszDensidadPro);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.sOrden[i].sLinea[j].pszNombrePro);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.sOrden[i].sLinea[j].pszCodigoPro);
|
||
ListBox1->Items->Add(scadena);
|
||
strcpy(scadena,sDatos.sOrden[i].sLinea[j].pszCantidadPro);
|
||
ListBox1->Items->Add(scadena);
|
||
itoa(sDatos.sOrden[i].sLinea[j].nResultadoPesoCarga,scadena,10);
|
||
ListBox1->Items->Add(scadena);
|
||
}
|
||
|
||
i++;
|
||
}
|
||
}
|
||
|
||
if(!strcmp("DISTRIBUCION",cadena))
|
||
{
|
||
strcpy(scadena,"DISTRIBUCION DE LA CARGA EN LOS COMPARTIMENTOS");
|
||
ListBox1->Items->Add(scadena);
|
||
for(i=0;i<NUM_MAXIMO_COMPARTIMENTO;i++)
|
||
{
|
||
itoa(sDatos.nProducto_Dep[i],scadena,10);
|
||
ListBox1->Items->Add(scadena);
|
||
}
|
||
}
|
||
|
||
}
|
||
|
||
//Comprobamos si el peso de carga es superior al maximos permitido por el camion
|
||
void __fastcall TForm1::ComprobarPeso1Click(TObject *Sender)
|
||
{
|
||
DatosAutorizacion sDatos;
|
||
int nError;
|
||
|
||
nError=Autorizacion->CalcularPesoVolCarga(hBaseDatos);
|
||
Autorizacion->LeerEstructura(&sDatos);
|
||
if(nError)
|
||
MuestraError(nError);
|
||
else
|
||
{
|
||
MuestraLista("PESO");
|
||
ShowMessage("Fue todo correcto");
|
||
}
|
||
if(strcmp(sDatos.sOrden[0].sLinea[0].pszCodigoPro,""))
|
||
MuestraLista("PESO");
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::ComprobarPeso2Click(TObject *Sender)
|
||
{
|
||
int nError;
|
||
|
||
nError=Autorizacion->ComprobarPesoCarga(hBaseDatos);
|
||
|
||
if(nError)
|
||
MuestraError(nError);
|
||
else
|
||
{
|
||
MuestraLista("PESO");
|
||
ShowMessage("Fue todo correcto");
|
||
}
|
||
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::DistribuirCarga1Click(TObject *Sender)
|
||
{
|
||
if(Autorizacion->ComprobarDistribucionCarga()==0)
|
||
{
|
||
MuestraLista("DISTRIBUCION");
|
||
ShowMessage("Fue todo correcto");
|
||
}
|
||
else
|
||
ShowMessage("No se pudo distribuir la Carga");
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::ComprobarEstado1Click(TObject *Sender)
|
||
{
|
||
DatosAutorizacion sDatos;
|
||
int nError;
|
||
|
||
//Leemos la Estructura
|
||
Autorizacion->LeerEstructura(&sDatos);
|
||
|
||
//Inicializamos
|
||
nError=0;
|
||
|
||
//Comprobamos el estado del conductor
|
||
nError=Autorizacion->ComprobarEstado(hBaseDatos);
|
||
if(nError==AUT_EST_CON_YA_DENTRO)
|
||
ShowMessage("Conductor en otro estado");
|
||
|
||
//Comprobamos el estado del cisterna
|
||
if(nError==AUT_EST_CIS_YA_DENTRO)
|
||
ShowMessage("Cisterna en otro estado");
|
||
|
||
//Comprobamos el estado del Tractor
|
||
if(nError==AUT_EST_TRA_YA_DENTRO)
|
||
ShowMessage("Tractor en otro estado");
|
||
|
||
if(!nError)
|
||
ShowMessage("Fue todo correcto");
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::Button1Click(TObject *Sender)
|
||
{
|
||
Autorizacion->BuscarNumeroViaje(hBaseDatos);
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::ComprobarEstado2Click(TObject *Sender)
|
||
{
|
||
dbiTabla TCar;
|
||
int nError;
|
||
|
||
//Abrimos la tabla TCAR en exclusiva
|
||
if(!AbrirTablaBDE(&TCar,"SIMICCAR",NULL,true,hBaseDatos))
|
||
{
|
||
nError=0;
|
||
nError=PesoEntrada->ComprobarEstado("0602",TCar);
|
||
if(nError)
|
||
ShowMessage("Estado inapropiado");
|
||
else
|
||
ShowMessage("Todo Correcto");
|
||
}
|
||
else
|
||
ShowMessage("Hubo un Error de TCAR");
|
||
|
||
//Cerramos la tabla de TCAR
|
||
CerrarTablaBDE(&TCar);
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::PesoEntrada1Click(TObject *Sender)
|
||
{
|
||
int nError;
|
||
nError=PesoEntrada->PesoEntrada("0602",hBaseDatos);
|
||
if(!nError)
|
||
ShowMessage("Fue todo correcto");
|
||
else
|
||
ShowMessage("Algo fue mal");
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::PesodeSalida2Click(TObject *Sender)
|
||
{
|
||
int nError;
|
||
nError=PesoSalida->PesoSalida("0602",hBaseDatos);
|
||
if(!nError)
|
||
ShowMessage("Fue todo correcto");
|
||
else
|
||
ShowMessage("Algo fue mal");
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::Albaran2Click(TObject *Sender)
|
||
{
|
||
//El "00090" es el correspondiente al conductor asociado
|
||
if(Albaran->Albaran("0602",hBaseDatos))
|
||
ShowMessage("Hubo un error");
|
||
else
|
||
ShowMessage("Todo Correcto");
|
||
}
|
||
//---------------------------------------------------------------------------
|
||
/*
|
||
bool TForm1::LeerFichero(char *NombreFichero,char *NombreEstructura)
|
||
{
|
||
bool bCorrecto;
|
||
FILE *fichero;
|
||
LINDat sLINDat;
|
||
ELEDat sELEDat;
|
||
DRVDat sDRVDat;
|
||
|
||
bCorrecto=true;
|
||
ListBox1->Clear();
|
||
//Abrimos le fichero en modo lectura
|
||
if( ( fichero = fopen(NombreFichero, "rb") ) == NULL)
|
||
bCorrecto=false;
|
||
else
|
||
{
|
||
if(!strcmp(NombreEstructura,"LINDat"))
|
||
{
|
||
while (!feof(fichero))
|
||
{
|
||
//Leemos la estructura
|
||
fread(&sLINDat, sizeof(sLINDat), 1, fichero);
|
||
|
||
//Ponemos el Fin de cadena
|
||
sLINDat.cNumeroLineaLIN[2]=0;
|
||
sLINDat.cVelocidadLineaLIN[5]=0;
|
||
|
||
//Mostramos la Estructura
|
||
ListBox1->Items->Add("DATOS DE LA LINEA");
|
||
ListBox1->Items->Add("=================");
|
||
ListBox1->Items->Add(sLINDat.cConcentradorLIN);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sLINDat.cNumeroLineaLIN);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sLINDat.cLineaActivaLIN);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sLINDat.cVelocidadLineaLIN);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sLINDat.cAnchuraDatosLIN);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sLINDat.cParidadLIN);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sLINDat.cBitsDeStopLIN);
|
||
ListBox1->Items->Add(" ");
|
||
}
|
||
}
|
||
if(!strcmp(NombreEstructura,"ELEDat"))
|
||
{
|
||
while (!feof(fichero))
|
||
{
|
||
//Leemos la estructura
|
||
fread(&sELEDat, sizeof(sELEDat), 1, fichero);
|
||
|
||
//Ponemos el Fin de cadena
|
||
sELEDat.cNumeroLineaELE[2]=0;
|
||
sELEDat.cTipoELE[3]=0;
|
||
sELEDat.cIdentificaELE[3]=0;
|
||
sELEDat.cNombreDriverELE[6]=0;
|
||
sELEDat.cTimeOutComunicaELE[3]=0;
|
||
sELEDat.cDireccionELE[3]=0;
|
||
|
||
//Mostramos la Estructura
|
||
ListBox1->Items->Add("DATOS DE ELEMENTOS");
|
||
ListBox1->Items->Add("==================");
|
||
ListBox1->Items->Add(sELEDat.cConcentradorELE);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sELEDat.cNumeroLineaELE);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sELEDat.cTipoELE);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sELEDat.cIdentificaELE);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sELEDat.cElementoActivoELE);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sELEDat.cNombreDriverELE);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sELEDat.cTimeOutComunicaELE);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sELEDat.cDireccionELE);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sELEDat.cTipoPrioridadELE);
|
||
ListBox1->Items->Add(" ");
|
||
|
||
}
|
||
}
|
||
if(!strcmp(NombreEstructura,"DRVDat"))
|
||
{
|
||
while (!feof(fichero))
|
||
{
|
||
//Leemos la estructura
|
||
fread(&sDRVDat, sizeof(sDRVDat)+1, 1, fichero);
|
||
|
||
//Ponemos el Fin de cadena
|
||
sDRVDat.cNombreDriverDRV[6]=0;
|
||
sDRVDat.cTamBufferTraDRV[4]=0;
|
||
sDRVDat.cTamBufferRecDRV[4]=0;
|
||
sDRVDat.cTamPeriodicaDRV[4]=0;
|
||
|
||
//Mostramos la Estructura
|
||
ListBox1->Items->Add("DATOS DE DRIVERS");
|
||
ListBox1->Items->Add("================");
|
||
ListBox1->Items->Add(sDRVDat.cNombreDriverDRV);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sDRVDat.cTamBufferTraDRV);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sDRVDat.cTamBufferRecDRV);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sDRVDat.cTamPeriodicaDRV);
|
||
ListBox1->Items->Add(" ");
|
||
}
|
||
}
|
||
// if(!strcmp(NombreEstructura,"DatosTRADat"))
|
||
}
|
||
fclose(fichero);
|
||
|
||
return bCorrecto;
|
||
} */
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::Transfer1Click(TObject *Sender)
|
||
{
|
||
TRAPERDat sTRAPERIODICADat[NUM_MAXIMO_PERIODICA];
|
||
TRAOCADat sTRAOCASIONALDat;
|
||
BYTE byi;
|
||
char sCadena[25];
|
||
int nCorrecto;
|
||
|
||
ListBox1->Clear();
|
||
|
||
//Leemos de los ficheros y rellenamos la estructura transfer
|
||
nCorrecto=Transfer->RellenarEstructuraTransfer();
|
||
|
||
if(nCorrecto==TRANSFER_CORRECTO)
|
||
{
|
||
ShowMessage("Lectura del fichero transfer.dat correcta");
|
||
Transfer->LeerEstructura(sTRAPERIODICADat,&sTRAOCASIONALDat);
|
||
byi=0;
|
||
while(sTRAPERIODICADat[byi].lPosicionTRAPER!=-1 && byi<NUM_MAXIMO_ELEMENTOS)
|
||
{
|
||
//Mostramos los datos
|
||
ListBox1->Items->Add("DATOS DE TRANSFER");
|
||
ListBox1->Items->Add("=================");
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add("Posicion: ");
|
||
ltoa(sTRAPERIODICADat[byi].lPosicionTRAPER,sCadena,10);
|
||
ListBox1->Items->Add(sCadena);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add("Tipo: ");
|
||
ListBox1->Items->Add(sTRAPERIODICADat[byi].cTipoIDTRAPER);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add("Tama<EFBFBD>o: ");
|
||
ListBox1->Items->Add(sTRAPERIODICADat[byi].lTamPeriodicaTRAPERDat);
|
||
ListBox1->Items->Add(" ");
|
||
byi++;
|
||
}
|
||
}
|
||
else
|
||
ShowMessage("Error en la lectura del fichero transfer.dat");
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::Elemento1Click(TObject *Sender)
|
||
{
|
||
ELEDat sELEDat;
|
||
bool bCorrecto;
|
||
|
||
bCorrecto=Transfer->LeerFichero("elemento.dat","ELEDat");
|
||
|
||
if(bCorrecto)
|
||
{
|
||
ShowMessage("Lectura del fichero elementos.dat correcta");
|
||
ListBox1->Clear();
|
||
while(sELEDat.cConcentradorELE!='0')
|
||
{
|
||
//Mostramos la Estructura
|
||
ListBox1->Items->Add("DATOS DE ELEMENTOS");
|
||
ListBox1->Items->Add("==================");
|
||
ListBox1->Items->Add(sELEDat.cConcentradorELE);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sELEDat.cNumeroLineaELE);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sELEDat.cTipoELE);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sELEDat.cIdentificaELE);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sELEDat.cElementoActivoELE);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sELEDat.cNombreDriverELE);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sELEDat.cTimeOutComunicaELE);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sELEDat.cDireccionELE);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sELEDat.cTipoPrioridadELE);
|
||
ListBox1->Items->Add(" ");
|
||
}
|
||
}
|
||
else
|
||
ShowMessage("Erro en la lectura del fichero elementos.dat");
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::Linea1Click(TObject *Sender)
|
||
{
|
||
LINDat sLINDat;
|
||
bool bCorrecto;
|
||
|
||
bCorrecto=Transfer->LeerFichero("lineas.dat","LINDat");
|
||
|
||
if(bCorrecto)
|
||
{
|
||
ShowMessage("Lectura del fichero lineas.dat correcta");
|
||
ListBox1->Clear();
|
||
while(sLINDat.cConcentradorLIN!='0')
|
||
{
|
||
//Mostramos la Estructura
|
||
ListBox1->Items->Add("DATOS DE LA LINEA");
|
||
ListBox1->Items->Add("=================");
|
||
ListBox1->Items->Add(sLINDat.cConcentradorLIN);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sLINDat.cNumeroLineaLIN);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sLINDat.cLineaActivaLIN);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sLINDat.cVelocidadLineaLIN);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sLINDat.cAnchuraDatosLIN);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sLINDat.cParidadLIN);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sLINDat.cBitsDeStopLIN);
|
||
ListBox1->Items->Add(" ");
|
||
}
|
||
}
|
||
else
|
||
ShowMessage("Error en la lectura del fichero lineas.dat");
|
||
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::Driver1Click(TObject *Sender)
|
||
{
|
||
DRVDat sDRVDat;
|
||
bool bCorrecto;
|
||
|
||
bCorrecto=Transfer->LeerFichero("drivers.dat","DRVDat");
|
||
|
||
if(bCorrecto)
|
||
{
|
||
ShowMessage("Lectura del fichero drivers.dat correcta");
|
||
ListBox1->Clear();
|
||
while( !strcmp(sDRVDat.cNombreDriverDRV,"0") )
|
||
{
|
||
//Mostramos la Estructura
|
||
ListBox1->Items->Add("DATOS DE DRIVERS");
|
||
ListBox1->Items->Add("================");
|
||
ListBox1->Items->Add(sDRVDat.cNombreDriverDRV);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sDRVDat.cTamBufferTraDRV);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sDRVDat.cTamBufferRecDRV);
|
||
ListBox1->Items->Add(" ");
|
||
ListBox1->Items->Add(sDRVDat.cTamPeriodicaDRV);
|
||
ListBox1->Items->Add(" ");
|
||
}
|
||
}
|
||
else
|
||
ShowMessage("Error en la lectura del fichero drivers.dat");
|
||
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::LeerOcasional1Click(TObject *Sender)
|
||
{
|
||
BYTE byi;
|
||
char Texto[128];
|
||
int nRespuesta;
|
||
|
||
memset(Texto,0,sizeof(Texto));
|
||
|
||
ListBox1->Clear();
|
||
for(byi=1;byi<17;byi++)
|
||
{
|
||
nRespuesta=Transfer->LeerOcasional(Texto,byi);
|
||
ListBox1->Items->Add(Texto);
|
||
}
|
||
|
||
if(!nRespuesta)
|
||
ShowMessage("Todo fue correcto");
|
||
else
|
||
ShowMessage("Hubo un error");
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::EscribirOcasional1Click(TObject *Sender)
|
||
{
|
||
int nResultado;
|
||
char sSentencia[TAM_MAXIMO_OCASIONAL];
|
||
|
||
Formatea(sSentencia,128,"%c%s%s%c%s%s",'2',"BBRPEN","*12",'A',"13","Teclee Codigo");
|
||
nResultado=Transfer->EscribirOcasional(sSentencia,7);
|
||
|
||
if(!nResultado)
|
||
ShowMessage("Todo fue correcto");
|
||
else
|
||
ShowMessage("Hubo un Error");
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
void __fastcall TForm1::Edit1KeyPress(TObject *Sender, char &Key)
|
||
{
|
||
//Si le da al Return cogemos la instruccion
|
||
if(Key=='\r')
|
||
{
|
||
strcpy(sDatoTecleado,Edit1->Text.c_str());
|
||
switch(byOpcion)
|
||
{
|
||
case OpConductor: ConductorClick(Sender);
|
||
break;
|
||
case OpCisterna: CisternaClick(Sender);
|
||
break;
|
||
case OpTractor: TractorClick(Sender);
|
||
break;
|
||
case OpSuministrador: SuministradorClick(Sender);
|
||
break;
|
||
case OpPedidos: PedidosClick(Sender);
|
||
break;
|
||
}
|
||
Edit1->Text="";
|
||
Label1->Visible=false;
|
||
Edit1->Visible=false;
|
||
//Inicializamos el codigo de teclado
|
||
strcpy(sDatoTecleado,"");
|
||
if(bTodos)
|
||
TodosClick(Sender);
|
||
}
|
||
}
|
||
|
||
//---------------------------------------------------------------------------
|
||
|
||
void __fastcall TForm1::CargarThreads1Click(TObject *Sender)
|
||
{
|
||
BYTE byResultado;
|
||
|
||
Transfer1Click(Sender);
|
||
byResultado=0;
|
||
byResultado=CargarThreads();
|
||
|
||
if(byResultado)
|
||
ShowMessage("Hubo un Error cargando los threads");
|
||
}
|
||
//---------------------------------------------------------------------------
|
||
|
||
void __fastcall TForm1::FinalizarThreads1Click(TObject *Sender)
|
||
{
|
||
TerminarThread(HDAUT);
|
||
TerminarThread(HDPSE);
|
||
TerminarThread(HDPSS);
|
||
TerminarThread(HDALB);
|
||
TerminarThread(HDContadores);
|
||
}
|
||
//---------------------------------------------------------------------------
|
||
|