9287 lines
307 KiB
Plaintext
9287 lines
307 KiB
Plaintext
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Nacharbeitssource f<>r INPA
|
|||
|
//*
|
|||
|
//* Sourcedatei DDE73KWP.SRC
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
//* History :
|
|||
|
//* 03.07.2007 asc V0.10 Erstellung auf Basis von DDE72N57
|
|||
|
//* allgemeine STEUERN_SELECTIV Funktion eingef<65>gt
|
|||
|
//* 31.07.2007 asc V0.11 Anpassung an akutelle SGBD
|
|||
|
//* 14.08.2007 asc V0.20 SCR Umf<6D>nge hinzu
|
|||
|
//* 12.11.2007 asc V0.30 EWS Men<65> hinzu
|
|||
|
//* 23.11.2007 asc V0.40 DDLI Block hinzu
|
|||
|
//* 10.12.2007 asc V0.50 SCR Umf<6D>nge erweitert, allgemeine STEUERN_SELECTIV Funktion um Anzeige zus<75>tzlicher Messwerte erweitert
|
|||
|
//* 13.12.2007 au V0.60 SCR-Labels korrigiert
|
|||
|
//* 19.12.2007 au V0.70 SCR-Labels hinzugef<65>gt
|
|||
|
//* 11.01.2008 ib V0.80 SCR-Messdatenaufzeichnung hinzu gef<65>gt
|
|||
|
//* 17.01.2008 au V0.90 SCR-Messwerte hinzugenommen
|
|||
|
//* 28.01.2008 au V1.00 IMA-Daten Men<65> angepasst wegen DDE7
|
|||
|
//**********************************************************************
|
|||
|
#include "inpa.h"
|
|||
|
#include "BMW_STD.H"
|
|||
|
|
|||
|
// Titel, Version, Verantwortung, Steuerger<65>t
|
|||
|
string titel ="Nacharbeitsscript DDE7 N57 E60, E65, E70, E9x KWP2000"; // Titel Nacharbeitsprogramm
|
|||
|
string version="1.00"; // Version Nacharbeitsprogramm
|
|||
|
string origin ="BMW TI-431 Majerus/Unverdorben"; // Verantwortung Nacharbeitsprogramm
|
|||
|
string sgbd ="D73N57B0,D73N57C0"; // Steuerger<65>t
|
|||
|
string gruppe ="D_MOTOR"; //D_MOTOR // Gruppendatei
|
|||
|
|
|||
|
string speicher_lesen_parameter="LAR;FLASH;UIFM;-ROMI;-ROMX;-RAMIS;-RAMIL;-RAMXX;-NVRAM";
|
|||
|
// Moegliche Speicher-Parameter: "LAR;FLASH;UIFM;ROMI;ROMX;RAMIS;RAMIL;RAMXX;NVRAM";
|
|||
|
// Bei Leerstring erfolgt kein Men<65>punkt Speicher Lesen
|
|||
|
|
|||
|
// allgemeine globale Variable
|
|||
|
string text_var;
|
|||
|
real zahlen_var;
|
|||
|
int ganz_zahl, ende = 0;
|
|||
|
bool logik_var;
|
|||
|
string job_state; // JOB_STATUS Variable
|
|||
|
int input_state; // Eingabestatus
|
|||
|
int input_ok=0; // Eingabe mit OK beendet
|
|||
|
int ll_wert;
|
|||
|
int inputstate=0; // Variable fuer Abbruchbedingung bei Dialogbox
|
|||
|
string Diag_Index;
|
|||
|
int val1; // Variable 1
|
|||
|
int taste;
|
|||
|
string blank=" ";
|
|||
|
|
|||
|
string glf; // Gesteuerte Luftf<74>hrung
|
|||
|
|
|||
|
|
|||
|
|
|||
|
int i = 0;
|
|||
|
long longval;
|
|||
|
long vergleich_var = 1;
|
|||
|
long stelle;
|
|||
|
|
|||
|
string steller; //Enth<74>lt Label aus Tabelle "Steller"
|
|||
|
string st_name; //Voller Name
|
|||
|
int st_ein; //Wert f<>r Ansteuerung "EIN"
|
|||
|
int st_aus; //Wert f<>r Ansteuerung "AUS"
|
|||
|
string st_dim; //Einheit ("-" => digital)
|
|||
|
string st_add_label; //Zus<75>tzlich anzuzeigende Messwerte
|
|||
|
string datei_ddli = ""; // Filename zum Abspeichern der DDLI-Liste
|
|||
|
string datei_rec = ""; // Filename zum Abspeichern der Messwerte
|
|||
|
|
|||
|
// start of :#include "BMW_STD.SRC"
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* INPA Library-Funktionen BMW_STD.SRC
|
|||
|
//*
|
|||
|
//* mindestens INPA 5.0.1
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
//* Gall TI-430
|
|||
|
//**********************************************************************
|
|||
|
//* History:
|
|||
|
//* 05.05.2000 rd V0.01 Ersterstellung
|
|||
|
//* 23.06.2000 rd V0.02 <20>berarbeitung f<>r E65 und E85
|
|||
|
//* 04.07.2000 rd V0.03 <20>berarbeitung der Funktionen
|
|||
|
//* 08.11.2000 rd V0.04 AIF Lesen Results <20>berarbeitet
|
|||
|
//* 01.03.2001 rd V0.05 m_status_flag neu hinzu
|
|||
|
//* 02.03.2001 rd V0.06 m_steuern_flag neu hinzu
|
|||
|
//* 18.05.2001 rd V0.07 AIF-Ausgabe verbessert
|
|||
|
//* 25.04.2002 rd V0.08 Erweiterung HS_LESEN
|
|||
|
//* 25.04.2002 rd V1.00 Freigabe
|
|||
|
//* 24.09.2002 rd V1.01 Erweiterung Ident f<>r DS2
|
|||
|
//* 19.11.2002 rd V1.02 FS_MODE erweitert um PCODEs
|
|||
|
//* 16.02.2004 rd V2.00 Umstellung auf 32-Bit Version
|
|||
|
//* rd V2.00 Entfernung EldiAuftragLesen, EldiAuftragEingeben
|
|||
|
//* 30.03.2006 GA V3.00 Erweiterung auf UDS (ISO 14229)
|
|||
|
//* GA V3.00 Hinweis im Hauptfenster, wenn Simulationsmodus aktiv ist.
|
|||
|
//* 05.04.2007 GA V3.01 Abfrage auf IS_ und HS_LOESCHEN implementiert
|
|||
|
//**********************************************************************
|
|||
|
string package="3.01";
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Globale Variablen
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
|
|||
|
// Umrechnungsfaktoren deutsch / englisch
|
|||
|
real m_c = 1.0; // Grad Celsius -> Fahrenheit z = x * m_c + a_c
|
|||
|
real a_c = 0.0;
|
|||
|
real m_km = 1.0; // km -> miles z = x * m_km
|
|||
|
real m_l = 1.0; // Liter -> Gallon US z = x * m_l
|
|||
|
|
|||
|
// f<>r Info
|
|||
|
string sgbd_ecu;
|
|||
|
string sgbd_origin;
|
|||
|
string sgbd_revision;
|
|||
|
string sgbd_package;
|
|||
|
string sgbd_sprache;
|
|||
|
string sgbd_comment;
|
|||
|
string gruppe_ecu;
|
|||
|
string gruppe_origin;
|
|||
|
string gruppe_revision;
|
|||
|
string gruppe_comment;
|
|||
|
|
|||
|
// f<>r Status-Men<65>
|
|||
|
bool m_status_flag=TRUE;
|
|||
|
// True Status-Men<65> wird angezeigt
|
|||
|
|
|||
|
// f<>r Steuern-Men<65>
|
|||
|
bool m_steuern_flag=TRUE;
|
|||
|
// True Steuern-Men<65> wird angezeigt
|
|||
|
|
|||
|
// f<>r FS_LESEN speichern
|
|||
|
bool fs_lesen_save_as_flag;
|
|||
|
|
|||
|
// f<>r IS_LESEN speichern
|
|||
|
bool is_lesen_save_as_flag;
|
|||
|
|
|||
|
// f<>r HS_LESEN speichern
|
|||
|
bool hs_lesen_save_as_flag;
|
|||
|
|
|||
|
// f<>r FS_LESEN
|
|||
|
bool fs_lesen_flag;
|
|||
|
// True wenn JOB vorhanden
|
|||
|
|
|||
|
// f<>r IS_LESEN
|
|||
|
bool is_lesen_flag;
|
|||
|
// True wenn JOB vorhanden
|
|||
|
|
|||
|
// f<>r HS_LESEN
|
|||
|
bool hs_lesen_flag;
|
|||
|
// True wenn JOB vorhanden
|
|||
|
|
|||
|
// f<>r IS_LOESCHEN
|
|||
|
bool is_loeschen_flag;
|
|||
|
// True wenn JOB vorhanden
|
|||
|
|
|||
|
// f<>r HS_LOESCHEN
|
|||
|
bool hs_loeschen_flag;
|
|||
|
// True wenn JOB vorhanden
|
|||
|
|
|||
|
// Handle f<>r FS_LESEN
|
|||
|
int f_ort_nr_buffer = 0;
|
|||
|
int f_ort_text_buffer = 0;
|
|||
|
|
|||
|
// In INPA.INI wird festgelegt ob
|
|||
|
// nach FS- IS-, HS-L<>schen automatisch wieder gelesen wird.
|
|||
|
bool deleteread_flag;
|
|||
|
|
|||
|
// Wenn Ediabas im Simulationsmode l<>uft, dies im Hauptfenster anzeigen
|
|||
|
bool simulation_flag;
|
|||
|
|
|||
|
// f<>r Ident Screen, bzw. SVK Screen bei UDS (ISO 14229)
|
|||
|
int ident_typ;
|
|||
|
// 1= DS2
|
|||
|
// 2= BMW Fast
|
|||
|
// 3= UDS (ISO 14229)
|
|||
|
|
|||
|
|
|||
|
// f<>r SPEICHER_LESEN
|
|||
|
bool speicher_lesen_flag;
|
|||
|
// True wenn JOB vorhanden
|
|||
|
bool speicher_lesen_lar_flag;
|
|||
|
bool speicher_lesen_uifm_flag;
|
|||
|
bool speicher_lesen_romi_flag;
|
|||
|
bool speicher_lesen_romx_flag;
|
|||
|
bool speicher_lesen_nvram_flag;
|
|||
|
bool speicher_lesen_ramis_flag;
|
|||
|
bool speicher_lesen_ramxx_flag;
|
|||
|
bool speicher_lesen_flash_flag;
|
|||
|
bool speicher_lesen_ramil_flag;
|
|||
|
|
|||
|
// f<>r Speicher lesen Ausgabe
|
|||
|
string speicher_lesen_text = "";
|
|||
|
string speicher_lesen_seg_adr_anz = "";
|
|||
|
string speicher_lesen_adresse = "0x000000";
|
|||
|
int speicher_lesen_anzahl = 64;
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Deklaration der Funktionen
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
extern ScriptInit(); // befindet sich im Hauptprogramm
|
|||
|
|
|||
|
// start of :#include "BATTERIE.SRC"
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* INPA Library-Funktionen BATTERIE.SRC
|
|||
|
//*
|
|||
|
//* mindestens INPA 5.0.1
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
//* Gall TI-430
|
|||
|
//**********************************************************************
|
|||
|
//* History:
|
|||
|
//* 04.07.2000 rd V0.03 Ersterstellung
|
|||
|
//* 25.04.2002 rd V1.00 Freigabe
|
|||
|
//* 16.02.2004 rd V2.00 Umstellung auf 32-Bit Version
|
|||
|
//* 01.04.2004 rd V2.01 Im Fehlerfalle delay eingebaut
|
|||
|
//* 30.03.2006 GA V3.00 Erweiterung auf UDS (ISO 14229)
|
|||
|
//**********************************************************************
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* ShowBatteryIgnition
|
|||
|
//*
|
|||
|
//* Anzeige des Batterie- und Z<>ndungs-Status
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
ShowBatteryIgnition()
|
|||
|
{
|
|||
|
bool fehlerflag; // Fehler aufgetreten
|
|||
|
bool fehlerflag2; // Fehler aufgetreten
|
|||
|
bool zuendung; // Z<>ndung ein/aus
|
|||
|
bool batterie; // Batterie ein/aus
|
|||
|
int wert; // allgemeine Variable
|
|||
|
|
|||
|
ftextout("Batterie :", 0,5,1,0);
|
|||
|
ftextout("Z<>ndung :", 0,45,1,0);
|
|||
|
|
|||
|
INPAapiJob("UTILITY","STATUS_UBATT","","");
|
|||
|
INP1apiResultInt(fehlerflag,wert,"STAT_UBATT",1);
|
|||
|
if ((fehlerflag!=TRUE) || (wert==0))
|
|||
|
{
|
|||
|
batterie=FALSE;
|
|||
|
zuendung=FALSE;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
batterie=TRUE;
|
|||
|
INPAapiJob("UTILITY","STATUS_ZUENDUNG","","");
|
|||
|
INP1apiResultInt(fehlerflag2,wert,"STAT_ZUENDUNG",1);
|
|||
|
if ((fehlerflag2!=TRUE) || (wert==0))
|
|||
|
zuendung=FALSE;
|
|||
|
else
|
|||
|
zuendung=TRUE;
|
|||
|
}
|
|||
|
digitalout(batterie, 0,20,"","");
|
|||
|
if (batterie==TRUE)
|
|||
|
ftextout("ein ", 0,25,1,0);
|
|||
|
else
|
|||
|
{
|
|||
|
if (fehlerflag==TRUE)
|
|||
|
{
|
|||
|
ftextout("aus ", 0,25,1,0);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
ftextout("--- ", 0,25,1,0);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
digitalout(zuendung, 0,62,"","");
|
|||
|
if (zuendung==TRUE)
|
|||
|
ftextout("ein ", 0,67,1,0);
|
|||
|
else
|
|||
|
{
|
|||
|
if (fehlerflag2==TRUE)
|
|||
|
{
|
|||
|
ftextout("aus ", 0,67,1,0);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
ftextout("--- ", 0,67,1,0);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
if ((fehlerflag!=TRUE) || (fehlerflag2!=TRUE))
|
|||
|
{
|
|||
|
delay(2000);
|
|||
|
}
|
|||
|
}
|
|||
|
// -- EOF --
|
|||
|
// end of :#include "BATTERIE.SRC"
|
|||
|
// start of :#include "GRP_INFO.SRC"
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* INPA Library-Funktionen GRP_INFO.SRC
|
|||
|
//*
|
|||
|
//* mindestens INPA 5.0.1
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
//* Gall TI-430
|
|||
|
//**********************************************************************
|
|||
|
//* History:
|
|||
|
//* 04.07.2000 rd V0.03 Ersterstellung
|
|||
|
//* 25.04.2002 rd V1.00 Freigabe
|
|||
|
//* 16.02.2004 rd V2.00 Umstellung auf 32-Bit Version
|
|||
|
//* 30.03.2006 GA V3.00 EDIABAS.INI-Abfrage ob Simulationsmode aktiv ist
|
|||
|
//* 18.10.2006 GA V3.01 Abfrage ob EDIABAS im Simulationsmodus l<>uft ist jetzt nicht mehr auf Pfad c:\windows\ediabas.ini beschr<68>nkt
|
|||
|
//**********************************************************************
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* GruppenDateiInfo
|
|||
|
//*
|
|||
|
//* Versionsinformationen <20>ber Gruppendatei
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
import32 "C" lib "api32.DLL::__apiGetConfig" ApiGetConfig(in:long Handle,in: string Name,out: string Buffer, returns: int ReturnedValue);
|
|||
|
GruppenDateiInfo( in: string grp,
|
|||
|
inout: string grp_ecu, inout: string grp_origin,
|
|||
|
inout: string grp_revision, inout: string grp_comment)
|
|||
|
{
|
|||
|
string CurDir;
|
|||
|
string Temp;
|
|||
|
string Puffer;
|
|||
|
int Size;
|
|||
|
long PufferSize;
|
|||
|
int ret_int;
|
|||
|
string BS;
|
|||
|
string CR;
|
|||
|
int pos1;
|
|||
|
int pos2;
|
|||
|
int simulation;
|
|||
|
int input;
|
|||
|
long Handle;
|
|||
|
int Returned;
|
|||
|
string ini_path= "??????????????????????";//Variable mu<6D> ausreichend lang vorbelegt sein!
|
|||
|
// C:\ec-apps\ediabas\bin
|
|||
|
|
|||
|
chr( 92, BS ); // '\'
|
|||
|
chr( 13, CR );
|
|||
|
|
|||
|
// Pfad f<>r EDIBAS.INI ermitteln
|
|||
|
// WERT 2 wurde durch Tests ermittelt
|
|||
|
Handle=2;
|
|||
|
ApiGetConfig(Handle,"EDIABASINIPATH",ini_path,Returned);
|
|||
|
//Abfrage, ob EDIABAS im Simulationsmodus betrieben wird. Hinweisfenster erfolgt im Hauptfenster s_main
|
|||
|
GetPrivateProfileInt("Configuration","Simulation",2,ini_path+BS+"ediabas.ini",simulation);
|
|||
|
if (simulation == 1) simulation_flag= TRUE;
|
|||
|
else simulation_flag= FALSE;
|
|||
|
|
|||
|
Size=256;
|
|||
|
space(CurDir,Size);
|
|||
|
GetCurrentDirectory(256, CurDir, ret_int);
|
|||
|
SetCurrentDirectory("\EDIABAS\BIN", ret_int);
|
|||
|
|
|||
|
Size=1024;
|
|||
|
space(Puffer,Size);
|
|||
|
inttolong(Size, PufferSize);
|
|||
|
XTRACT("\ediabas\ecu"+ BS + grp + ".grp", 1, Puffer, PufferSize, ret_int);
|
|||
|
|
|||
|
grp_ecu="";
|
|||
|
instr(pos1, 0, Puffer, "ECU:");
|
|||
|
if (pos1 >= 0)
|
|||
|
{
|
|||
|
pos1 = pos1 + 4;
|
|||
|
instr(pos2, pos1, Puffer, CR );
|
|||
|
if (pos2 > pos1)
|
|||
|
midstr(grp_ecu, Puffer, pos1, pos2 - pos1);
|
|||
|
}
|
|||
|
|
|||
|
grp_origin="";
|
|||
|
instr(pos1, 0, Puffer, "ORIGIN:");
|
|||
|
if (pos1 >= 0)
|
|||
|
{
|
|||
|
pos1 = pos1 + 7;
|
|||
|
instr(pos2, pos1, Puffer, CR );
|
|||
|
if (pos2 > pos1)
|
|||
|
midstr(grp_origin, Puffer, pos1, pos2 - pos1);
|
|||
|
}
|
|||
|
|
|||
|
grp_revision="";
|
|||
|
instr(pos1, 0, Puffer, "REVISION:");
|
|||
|
if (pos1 >= 0)
|
|||
|
{
|
|||
|
pos1 = pos1 + 9;
|
|||
|
instr(pos2, pos1, Puffer, CR );
|
|||
|
if (pos2 > pos1)
|
|||
|
midstr(grp_revision, Puffer, pos1, pos2 - pos1);
|
|||
|
}
|
|||
|
|
|||
|
grp_comment="";
|
|||
|
pos1=0;
|
|||
|
pos2=0;
|
|||
|
while ((pos1 >= 0) && (pos2 >= 0))
|
|||
|
{
|
|||
|
instr(pos1, pos2, Puffer, "ECUCOMMENT:");
|
|||
|
if (pos1 >= 0)
|
|||
|
{
|
|||
|
pos1 = pos1 + 11;
|
|||
|
instr(pos2, pos1, Puffer, CR );
|
|||
|
if (pos2 > pos1)
|
|||
|
{
|
|||
|
midstr(Temp, Puffer, pos1, pos2 - pos1);
|
|||
|
grp_comment=grp_comment+Temp+",";
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
SetCurrentDirectory(CurDir, ret_int);
|
|||
|
}
|
|||
|
// -- EOF --
|
|||
|
// end of :#include "GRP_INFO.SRC"
|
|||
|
// start of :#include "SGBDINFO.SRC"
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* INPA Library-Funktionen SGBDINFO.SRC
|
|||
|
//*
|
|||
|
//* mindestens INPA 5.0.1
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
//* Gall TI-430
|
|||
|
//**********************************************************************
|
|||
|
//* History:
|
|||
|
//* 04.07.2000 rd V0.03 Ersterstellung
|
|||
|
//* 25.04.2002 rd V1.00 Freigabe
|
|||
|
//* 16.02.2004 rd V2.00 Umstellung auf 32-Bit Version
|
|||
|
//* 30.03.2006 GA V3.00 Erweiterung auf UDS (ISO 14229)
|
|||
|
//**********************************************************************
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Deklaration der Funktionen
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
extern SgbdInfo(in: string sg,
|
|||
|
inout: string sg_ecu, inout: string sg_origin,
|
|||
|
inout: string sg_revision, inout: string sg_package,
|
|||
|
inout: string sg_comment, inout: string sg_sprache);
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* SgbdInfo
|
|||
|
//*
|
|||
|
//* Versionsinformationen <20>ber SGBD
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
SgbdInfo( in: string sg,
|
|||
|
inout: string sg_ecu, inout: string sg_origin,
|
|||
|
inout: string sg_revision, inout: string sg_package,
|
|||
|
inout: string sg_comment, inout: string sg_sprache)
|
|||
|
{
|
|||
|
INPAapiJob(sg,"INFO","","");
|
|||
|
INPAapiResultText(sg_ecu,"ECU",1,"");
|
|||
|
INPAapiResultText(sg_revision,"REVISION",1,"");
|
|||
|
INPAapiResultText(sg_package,"PACKAGE",1,"");
|
|||
|
INPAapiResultText(sg_origin,"ORIGIN",1,"");
|
|||
|
INPAapiResultText(sg_comment,"COMMENT",1,"");
|
|||
|
INPAapiResultText(sg_sprache,"SPRACHE",1,"");
|
|||
|
}
|
|||
|
|
|||
|
// -- EOF --
|
|||
|
// end of :#include "SGBDINFO.SRC"
|
|||
|
// start of :#include "SGBDINPA.SRC"
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* INPA Library-Funktionen SgbdInpa.SRC
|
|||
|
//*
|
|||
|
//* mindestens INPA 5.0.1
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
//* Gall TI-430
|
|||
|
//**********************************************************************
|
|||
|
//* 12.03.2003 iS V1.05 Aufteilung der Funktionen(SgbdInpaCheck,GroupCheck)
|
|||
|
//* 16.02.2004 rd V2.00 Umstellung auf 32-Bit Version
|
|||
|
//* 30.03.2006 GA V3.00 Erweiterung auf UDS (ISO 14229)
|
|||
|
//* GA V3.00 Gezielte Ausgabe, wenn Gruppendatei oder SGBD nicht existiert
|
|||
|
//* GA V3.00 INPA.INI, [EXTRA], SRIPTS auslesen, ob "deleteread" gesetzt,
|
|||
|
//* GA V3.00 um nach FS- IS-, HS-L<>schen automatisch wieder zu lesen.
|
|||
|
//* 18.10.2006 GA V3.01 Check bez<65>glich auf Gruppen-Simulationsdatei, sowie "Identification error" erweitert
|
|||
|
//* 24.10.2006 GA V3.02 <20>berpr<70>fung ob T_GRTB.PRG vorhanden eingebaut
|
|||
|
//**********************************************************************
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* SgbdInpaCheck
|
|||
|
//*
|
|||
|
//* <20>berpr<70>fung ob SGBD zu INPA passt
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
SgbdInpaCheck()
|
|||
|
{
|
|||
|
string sgbd_version; // f<>r Versionskontrolle
|
|||
|
string inpa_version; // f<>r Versionskontrolle
|
|||
|
string inpa_sprache="deutsch"; // f<>r Sprachvariante
|
|||
|
string variante="???"; // f<>r Variantenkontrolle
|
|||
|
string err_text; // Fehlertext
|
|||
|
int errorcode; // Errorcode
|
|||
|
bool fehlerflag; // Fehlerflag
|
|||
|
string temp;
|
|||
|
string temp1;
|
|||
|
string temp2;
|
|||
|
int i;
|
|||
|
int k;
|
|||
|
int kk; // f<>r neue VersionsnummernKontrolle
|
|||
|
int ii;
|
|||
|
int a;
|
|||
|
int aa;
|
|||
|
int i1;
|
|||
|
int i2;
|
|||
|
int i3; // f<>r neue VersionsnummernKontrolle
|
|||
|
string sgbd_String_Lang;
|
|||
|
string sgbd_von_inpa_version;
|
|||
|
string ver_temp;
|
|||
|
string ver_temp1;
|
|||
|
string ver_temp2;
|
|||
|
string ver_temp3="--";
|
|||
|
real Version_SGBD;
|
|||
|
real Version_INPA;
|
|||
|
string CurDir; // Zur Pr<50>fung ob Gruppendatei exisiert
|
|||
|
int ret_int;
|
|||
|
int Size;
|
|||
|
int filecheck;
|
|||
|
string hinweis_text;
|
|||
|
|
|||
|
settitle(titel+" Version "+version);
|
|||
|
a=0;
|
|||
|
ii=0;
|
|||
|
i3=0;
|
|||
|
kk=0;
|
|||
|
aa=0;
|
|||
|
i=0;
|
|||
|
k=0;
|
|||
|
fehlerflag=FALSE;
|
|||
|
temp1="";
|
|||
|
temp2="";
|
|||
|
|
|||
|
instr(i,k,","+gruppe+",",",");
|
|||
|
while ((i >= 0) && (fehlerflag == FALSE))
|
|||
|
{
|
|||
|
k=i+1;
|
|||
|
instr(i,k,","+gruppe+",",",");
|
|||
|
if (i >= 0)
|
|||
|
{
|
|||
|
midstr(temp,","+gruppe+",",k,i-k);
|
|||
|
INPAapiJob(temp,"INITIALISIERUNG","","");
|
|||
|
INP1apiResultText(fehlerflag,variante,"VARIANTE",0,"");
|
|||
|
if (fehlerflag == TRUE) gruppe=temp;
|
|||
|
else
|
|||
|
{
|
|||
|
INP1apiErrorCode(errorcode);
|
|||
|
if (errorcode == 36)//Fehlende oder fehlerhafte Simulationsdatei
|
|||
|
{
|
|||
|
Size=256;
|
|||
|
space(CurDir,Size);
|
|||
|
GetCurrentDirectory(256, CurDir, ret_int);
|
|||
|
SetCurrentDirectory("\EDIABAS\SIM", ret_int);
|
|||
|
fileexist(temp+".SIM",filecheck);
|
|||
|
SetCurrentDirectory(CurDir, ret_int);
|
|||
|
if (filecheck == 0)
|
|||
|
{
|
|||
|
temp1= temp1+", "+temp+".SIM";//Fehlerhafte Simulationsdatei
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
temp2= temp2+", "+temp+".SIM";//Fehlende Simulationsdatei
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
instr(i,0,gruppe,"d");//erstes Zeichen ein 'd'?
|
|||
|
instr(k,0,gruppe,"D");//erstes Zeichen ein 'D'?
|
|||
|
if ((i == 0) || (k == 0))
|
|||
|
hinweis_text= "das Steuerger<65>t liefert einen falschen Varianten- und / oder Diagnose-Index.";// bis F01: Gruppendateien fangen mit D_... an
|
|||
|
else hinweis_text= "das Steuerger<65>t liefert einen falschen SGBD-Index.";//gilt ab F01, Gruppendateien fangen mit G_... an
|
|||
|
|
|||
|
if (fehlerflag == FALSE)
|
|||
|
{
|
|||
|
//Fehlende oder fehlerhafte Gruppen-Simulationsdatei
|
|||
|
if (errorcode == 36)
|
|||
|
{
|
|||
|
//Fehlerhafte Simulationsdatei
|
|||
|
if (temp1 != "")
|
|||
|
{
|
|||
|
strlen(k,temp1);
|
|||
|
instr(i,k,temp1+",",",");//letztes Zeichen ein ','?
|
|||
|
if (i != -1) k= k-1; //Zeichenl<6E>nge um 1 k<>rzen
|
|||
|
instr(i,0,temp1+",",",");//erstes Zeichen ein ','?
|
|||
|
if (i == 0) midstr(temp1,temp1,1,k);//Kommata vor und hinter temp1 ausschneiden
|
|||
|
temp1= "Fehlerhafte Simulationsdatei: "+temp1+CRLF;
|
|||
|
}
|
|||
|
//Fehlende Simulationsdatei
|
|||
|
if (temp2 != "")
|
|||
|
{
|
|||
|
strlen(k,temp2);
|
|||
|
instr(i,k,temp2+",",",");//letztes Zeichen ein ','?
|
|||
|
if (i != -1) k= k-1; //Zeichenl<6E>nge um 1 k<>rzen
|
|||
|
instr(i,0,temp2+",",",");//erstes Zeichen ein ','?
|
|||
|
if (i == 0) midstr(temp2,temp2,1,k);//Kommata vor und hinter temp2 ausschneiden
|
|||
|
temp2= "Fehlende Simulationsdatei : "+temp2+CRLF;
|
|||
|
}
|
|||
|
|
|||
|
messagebox("Variantenkontrolle",
|
|||
|
"Fehler!"+CRLF+
|
|||
|
temp1+//Fehlerfafte Gruppen-Simulationsdateien
|
|||
|
temp2+//Fehlende -//-
|
|||
|
"Das Programm wird abgebrochen!");
|
|||
|
exit();
|
|||
|
}
|
|||
|
|
|||
|
//Gruppendatei vorhanden?
|
|||
|
Size=256;
|
|||
|
space(CurDir,Size);
|
|||
|
GetCurrentDirectory(256, CurDir, ret_int);
|
|||
|
SetCurrentDirectory("\EDIABAS\ECU", ret_int);
|
|||
|
fileexist(gruppe+".GRP",filecheck);
|
|||
|
SetCurrentDirectory(CurDir, ret_int);
|
|||
|
if (filecheck == 0)//Gruppendatei vorhanden, SGBD-, Kommunikationsfehler hier ausgeben
|
|||
|
{
|
|||
|
INP1apiErrorText(err_text);//Fehler beim Aufruf der VARIANTE?
|
|||
|
if (errorcode == 92)//92=SYS-0002: SG-Variantenbeschreibungsdatei (SGBD) nicht gefunden
|
|||
|
{
|
|||
|
//T_GRTB.PRG vorhanden?
|
|||
|
Size=256;
|
|||
|
space(CurDir,Size);
|
|||
|
GetCurrentDirectory(256, CurDir, ret_int);
|
|||
|
SetCurrentDirectory("\EDIABAS\ECU", ret_int);
|
|||
|
fileexist("T_GRTB.PRG",filecheck);
|
|||
|
SetCurrentDirectory(CurDir, ret_int);
|
|||
|
if (filecheck == 0)//T_GRTB.PRG ist vorhanden, somit fehlt die SGBD.
|
|||
|
{
|
|||
|
messagebox("Variantenkontrolle",
|
|||
|
"Fehler!"+CRLF+
|
|||
|
err_text+". "+CRLF+
|
|||
|
" "+CRLF+
|
|||
|
"Das Steuerger<65>t l<><6C>t sich zwar <20>ber die Gruppendatei: "+gruppe+".GRP"+" ansprechen,"+CRLF+
|
|||
|
"aber zur Diagnose fehlt eine entsprechende SGBD (*.PRG) im Verzeichnis ..\EDIABAS\ECU"+CRLF+
|
|||
|
" "+CRLF+
|
|||
|
"Aktualisieren Sie SGBDen, Gruppendateien und INPA Scripte regelm<6C><6D>ig!"+CRLF+
|
|||
|
" "+CRLF+
|
|||
|
"Das Programm wird abgebrochen!");
|
|||
|
}
|
|||
|
else//T_GRT.PRG fehlt
|
|||
|
{
|
|||
|
messagebox("Variantenkontrolle",
|
|||
|
"Fehler!"+CRLF+
|
|||
|
err_text+". "+CRLF+
|
|||
|
" "+CRLF+
|
|||
|
"Die Datei T_GRTB.PRG fehlt im Verzeichnis ..\EDIABAS\ECU"+CRLF+
|
|||
|
" "+CRLF+
|
|||
|
"Aktualisieren Sie SGBDen, Gruppendateien und INPA Scripte regelm<6C><6D>ig!"+CRLF+
|
|||
|
" "+CRLF+
|
|||
|
"Das Programm wird abgebrochen!");
|
|||
|
}
|
|||
|
}
|
|||
|
else if (errorcode == 102)//102= Identification error
|
|||
|
{
|
|||
|
instr(i,0,gruppe,"d");//erstes Zeichen ein 'd'?
|
|||
|
instr(k,0,gruppe,"D");//erstes Zeichen ein 'D'?
|
|||
|
if ((i == 0) || (k == 0))
|
|||
|
temp1= "das Steuerger<65>t liefert einen falschen Varianten- und / oder Diagnose-Index.";// bis F01: Gruppendateien fangen mit D_... an
|
|||
|
else temp1= "das Steuerger<65>t liefert einen falschen SGBD-Index.";//gilt ab F01, Gruppendateien fangen mit G_... an
|
|||
|
messagebox("Variantenkontrolle",
|
|||
|
"Fehler! Aufruf <20>ber Gruppendatei : "+gruppe+".GRP"+CRLF+
|
|||
|
err_text+". "+CRLF+
|
|||
|
" "+CRLF+
|
|||
|
"Sie besitzen entweder eine veraltete ..\EDIABAS\ECU\T_GRTB.PRG Datei, und / oder"+CRLF+
|
|||
|
hinweis_text+CRLF+
|
|||
|
" "+CRLF+
|
|||
|
"Das Programm wird abgebrochen!");
|
|||
|
}
|
|||
|
else //alle anderen Fehler
|
|||
|
{
|
|||
|
messagebox("Variantenkontrolle",
|
|||
|
"Fehler! Aufruf <20>ber Gruppendatei : "+gruppe+".GRP"+CRLF+
|
|||
|
" "+CRLF+
|
|||
|
err_text+". "+CRLF+
|
|||
|
" "+CRLF+
|
|||
|
" "+CRLF+
|
|||
|
"Das Programm wird abgebrochen!");
|
|||
|
}
|
|||
|
}
|
|||
|
else//Gruppendatei nicht vorhanden
|
|||
|
{
|
|||
|
messagebox("Variantenkontrolle",
|
|||
|
"Fehler! Gruppendatei : "+gruppe+".GRP "+CRLF+
|
|||
|
"existiert nicht im Verzeichnis ..\EDIABAS\ECU"+CRLF+
|
|||
|
" "+CRLF+
|
|||
|
"Aktualisieren Sie SGBDen, Gruppendateien und INPA Scripte regelm<6C><6D>ig!"+CRLF+
|
|||
|
" "+CRLF+
|
|||
|
"Das Programm wird abgebrochen!");
|
|||
|
}
|
|||
|
exit();
|
|||
|
}
|
|||
|
|
|||
|
i1=0;
|
|||
|
i2=0;
|
|||
|
instr(i1,0,","+sgbd+",",","+variante+",");
|
|||
|
if (i1 < 0)
|
|||
|
{
|
|||
|
instr(i2,0,","+sgbd+",",","+variante+"/");
|
|||
|
if (i2 < 0)
|
|||
|
{
|
|||
|
messagebox("Variantenkontrolle",
|
|||
|
"Gesuchtes Steuerger<65>t: '"+sgbd+"' nicht gefunden. "+CRLF+
|
|||
|
"Gefundenes Steuerger<65>t: '"+variante+"'. "+CRLF+
|
|||
|
" "+CRLF+
|
|||
|
"Sie besitzen entweder eine veraltete ..\EDIABAS\ECU\T_GRTB.PRG Datei, und / oder"+CRLF+
|
|||
|
hinweis_text+CRLF+
|
|||
|
" "+CRLF+
|
|||
|
"Das Programm wird abgebrochen!");
|
|||
|
exit();
|
|||
|
}
|
|||
|
|
|||
|
ver_temp3 = "--";
|
|||
|
instr(ii,i2,sgbd+",",",");
|
|||
|
if (ii >= 0)
|
|||
|
{
|
|||
|
midstr(ver_temp3,sgbd+",",i2,ii);
|
|||
|
instr(i3,0,ver_temp3,"/");
|
|||
|
if (i3 >= 0)
|
|||
|
{
|
|||
|
a = i2+i3+1;
|
|||
|
aa = ii-i2+i3-1;
|
|||
|
midstr(ver_temp3,sgbd+",",a,aa);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
sgbd_String_Lang = sgbd;
|
|||
|
sgbd=variante;
|
|||
|
|
|||
|
//
|
|||
|
// Info: Informatinon bei aufruf ohne BMW_STD.SRC
|
|||
|
//
|
|||
|
// ####################################################
|
|||
|
// # //f<>r Info #
|
|||
|
// # string sgbd_ecu; #
|
|||
|
// # string sgbd_origin; #
|
|||
|
// # string sgbd_revision; #
|
|||
|
// # string sgbd_package; #
|
|||
|
// # string sgbd_sprache; #
|
|||
|
// # string sgbd_comment; #
|
|||
|
// # string gruppe_ecu; #
|
|||
|
// # string gruppe_origin; #
|
|||
|
// # string gruppe_revision; #
|
|||
|
// # string gruppe_comment; #
|
|||
|
// # #
|
|||
|
// # #include "SgbdInfo.src" #
|
|||
|
// ####################################################
|
|||
|
//
|
|||
|
//
|
|||
|
SgbdInfo(sgbd, sgbd_ecu, sgbd_origin, sgbd_revision, sgbd_package, sgbd_comment, sgbd_sprache);
|
|||
|
// Bitte VARIABLEN als Globale variable aktivieren und Include (siehe Block //INFO)
|
|||
|
//
|
|||
|
//
|
|||
|
|
|||
|
//Versionskontrolle Auf 3 stellen vor / hinter dem "."
|
|||
|
instr(i3,0,ver_temp3,"V");
|
|||
|
if(i3>=0)
|
|||
|
{
|
|||
|
instr(i2,0,ver_temp3,",");
|
|||
|
midstr(ver_temp3,ver_temp3,i3+1,i2-1);
|
|||
|
stringtoreal(ver_temp3,Version_INPA);
|
|||
|
realtostring(Version_INPA,"3.3",ver_temp3);
|
|||
|
midstr(sgbd_von_inpa_version,ver_temp3,0,2);
|
|||
|
}
|
|||
|
stringtoreal(version,Version_INPA);
|
|||
|
realtostring(Version_INPA,"3.3",version);
|
|||
|
midstr(inpa_version,version,0,2);
|
|||
|
|
|||
|
stringtoreal(sgbd_revision,Version_SGBD);
|
|||
|
realtostring(Version_SGBD,"3.3",sgbd_revision);
|
|||
|
midstr(sgbd_version,sgbd_revision,0,2);
|
|||
|
|
|||
|
temp=inpa_version;
|
|||
|
temp1=sgbd_version;
|
|||
|
|
|||
|
if (ver_temp3 == "--")
|
|||
|
{
|
|||
|
// Vergleichen mit Versionsnummer INPA & SGBD
|
|||
|
if (inpa_version != sgbd_version)
|
|||
|
{
|
|||
|
messagebox("Versionskontrolle",
|
|||
|
"Nicht zusammenpassende Versionen. "+CRLF+
|
|||
|
"Fehlfunktion ist m<>glich!");
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if (temp == "0.")
|
|||
|
{
|
|||
|
if (temp1 == "0.")
|
|||
|
{
|
|||
|
messagebox("Versionskontrolle",
|
|||
|
"Programm noch in der Entwicklungsphase. "+CRLF+
|
|||
|
"Fehlfunktion ist m<>glich!"+CRLF+CRLF+
|
|||
|
"SGBD Version: "+sgbd_revision+CRLF+
|
|||
|
"INPA Version: "+version);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
messagebox("Versionskontrolle",
|
|||
|
"Programm noch in der Entwicklungsphase. "+CRLF+
|
|||
|
"Fehlfunktion ist m<>glich!"+CRLF+CRLF+
|
|||
|
"INPA Version: "+version);
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if (temp1 == "0.")
|
|||
|
{
|
|||
|
messagebox("Versionskontrolle",
|
|||
|
"Programm noch in der Entwicklungsphase. "+CRLF+
|
|||
|
"Fehlfunktion ist m<>glich!"+CRLF+CRLF+
|
|||
|
"SGBD Version: "+sgbd_revision);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
// Vergleichen mit Versionsnummer INPA(SGBD Vorwahl) & SGBD
|
|||
|
if (sgbd_von_inpa_version != sgbd_version)
|
|||
|
{
|
|||
|
messagebox("Versionskontrolle",
|
|||
|
"Nicht zusammenpassende Versionen. "+CRLF+
|
|||
|
"Fehlfunktion ist m<>glich!"+CRLF+CRLF+
|
|||
|
"SGBD Version: "+ ver_temp3 +" (in INPA) "+CRLF+
|
|||
|
"SGBD Version: "+ sgbd_revision +CRLF+
|
|||
|
"INPA Version: "+ version);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if (temp == "0.")
|
|||
|
{
|
|||
|
if (temp1 == "0.")
|
|||
|
{
|
|||
|
messagebox("Versionskontrolle",
|
|||
|
"Programm noch in der Entwicklungsphase. "+CRLF+
|
|||
|
"Fehlfunktion ist m<>glich!"+CRLF+CRLF+
|
|||
|
"SGBD Version: "+sgbd_revision+CRLF+
|
|||
|
"INPA Version: "+version);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
messagebox("Versionskontrolle",
|
|||
|
"Programm noch in der Entwicklungsphase. "+CRLF+
|
|||
|
"Fehlfunktion ist m<>glich!"+CRLF+CRLF+
|
|||
|
"INPA Version: "+version);
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if (temp1 == "0.")
|
|||
|
{
|
|||
|
messagebox("Versionskontrolle",
|
|||
|
"Programm noch in der Entwicklungsphase. "+CRLF+
|
|||
|
"Fehlfunktion ist m<>glich!"+CRLF+CRLF+
|
|||
|
"SGBD Version: "+sgbd_revision);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
if (inpa_sprache != sgbd_sprache)
|
|||
|
{
|
|||
|
messagebox("Sprachvariantenkontrolle",
|
|||
|
"Nicht zusammenpassende Sprachvariante. "+CRLF+
|
|||
|
"Fehlfunktion ist m<>glich!");
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// -- EOF --
|
|||
|
// end of :#include "SGBDINPA.SRC"
|
|||
|
// start of :#include "GRPCHECK.SRC"
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* INPA Library-Funktionen GrpCheck.SRC
|
|||
|
//*
|
|||
|
//* mindestens INPA 5.0.1
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
//* Gall TI-430
|
|||
|
//**********************************************************************
|
|||
|
//* History:
|
|||
|
//* 12.03.2003 iS V1.05 Aufteilung der Funktionen(SgbdInpaCheck,GroupCheck)
|
|||
|
//* 16.02.2004 rd V2.00 Umstellung auf 32-Bit Version
|
|||
|
//* 30.03.2006 GA V3.00 Erweiterung auf UDS (ISO 14229)
|
|||
|
//* 05.04.2007 GA V3.01 Abfrage auf IS_ und HS_LOESCHEN implementiert
|
|||
|
//* 20.04.2007 GA V3.02 FS-, IS-, HS_LESEN werden in einzelnen Tempdateien in ..\EDIABAS\BIN abgelegt
|
|||
|
//**********************************************************************
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* GroupCheck
|
|||
|
//*
|
|||
|
//* <20>berpr<70>fung der Gruppen-Info
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
GroupCheck()
|
|||
|
{
|
|||
|
string err_text; // Fehlertext
|
|||
|
bool fehlerflag; // Fehlerflag
|
|||
|
string temp;
|
|||
|
int sgbd_saetze; // f<>r Funktionen-Suche in SGBD
|
|||
|
string job_name; // JOBNMAE in SGBD
|
|||
|
int i;
|
|||
|
|
|||
|
fehlerflag=FALSE;
|
|||
|
i=0;
|
|||
|
|
|||
|
GruppenDateiInfo(gruppe, gruppe_ecu, gruppe_origin, gruppe_revision, gruppe_comment);
|
|||
|
|
|||
|
// Vorbelegung der Flags
|
|||
|
fs_lesen_flag = FALSE;
|
|||
|
is_lesen_flag = FALSE;
|
|||
|
speicher_lesen_flag = FALSE;
|
|||
|
is_loeschen_flag = FALSE;
|
|||
|
hs_loeschen_flag = FALSE;
|
|||
|
|
|||
|
INPAapiJob(sgbd,"_JOBS","","");
|
|||
|
|
|||
|
INP1apiResultSets(fehlerflag, sgbd_saetze);
|
|||
|
if (fehlerflag == FALSE)
|
|||
|
{
|
|||
|
INP1apiErrorText(err_text);
|
|||
|
messagebox("Unerwarteter Fehler", // sollte nie kommen
|
|||
|
err_text+". "+CRLF+
|
|||
|
"Das Programm wird abgebrochen!");
|
|||
|
exit();
|
|||
|
}
|
|||
|
i = 1;
|
|||
|
while ( i <= sgbd_saetze)
|
|||
|
{
|
|||
|
INPAapiResultText(job_name,"JOBNAME",i,"");
|
|||
|
if (job_name == "FS_LESEN" ) fs_lesen_flag=TRUE;
|
|||
|
if (job_name == "IS_LESEN" ) is_lesen_flag=TRUE;
|
|||
|
if (job_name == "HS_LESEN" ) hs_lesen_flag=TRUE;
|
|||
|
if (job_name == "IS_LOESCHEN" ) is_loeschen_flag=TRUE;
|
|||
|
if (job_name == "HS_LOESCHEN" ) hs_loeschen_flag=TRUE;
|
|||
|
if (job_name == "SPEICHER_LESEN" ) speicher_lesen_flag=TRUE;
|
|||
|
|
|||
|
if ((fs_lesen_flag == TRUE) &&
|
|||
|
(is_lesen_flag == TRUE) &&
|
|||
|
(hs_lesen_flag == TRUE) &&
|
|||
|
(is_loeschen_flag == TRUE) &&
|
|||
|
(hs_loeschen_flag == TRUE) &&
|
|||
|
(speicher_lesen_flag) == TRUE) i = sgbd_saetze;
|
|||
|
i = i + 1;
|
|||
|
}
|
|||
|
if (speicher_lesen_parameter == "") speicher_lesen_flag = FALSE;
|
|||
|
|
|||
|
if (speicher_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
instr(i, 0, ";"+speicher_lesen_parameter+";", ";LAR;");
|
|||
|
if ( i == -1 ) speicher_lesen_lar_flag = FALSE; else speicher_lesen_lar_flag = TRUE;
|
|||
|
|
|||
|
instr(i, 0, ";"+speicher_lesen_parameter+";", ";FLASH;");
|
|||
|
if ( i == -1 ) speicher_lesen_flash_flag = FALSE; else speicher_lesen_flash_flag = TRUE;
|
|||
|
|
|||
|
instr(i, 0, ";"+speicher_lesen_parameter+";", ";UIFM;");
|
|||
|
if ( i == -1 ) speicher_lesen_uifm_flag = FALSE; else speicher_lesen_uifm_flag = TRUE;
|
|||
|
|
|||
|
instr(i, 0, ";"+speicher_lesen_parameter+";", ";ROMI;");
|
|||
|
if ( i == -1 ) speicher_lesen_romi_flag = FALSE; else speicher_lesen_romi_flag = TRUE;
|
|||
|
|
|||
|
instr(i, 0, ";"+speicher_lesen_parameter+";", ";RAMIS;");
|
|||
|
if ( i == -1 ) speicher_lesen_ramis_flag = FALSE; else speicher_lesen_ramis_flag = TRUE;
|
|||
|
|
|||
|
instr(i, 0, ";"+speicher_lesen_parameter+";", ";RAMIL;");
|
|||
|
if ( i == -1 ) speicher_lesen_ramil_flag = FALSE; else speicher_lesen_ramil_flag = TRUE;
|
|||
|
|
|||
|
instr(i, 0, ";"+speicher_lesen_parameter+";", ";NVRAM;");
|
|||
|
if ( i == -1 ) speicher_lesen_nvram_flag = FALSE; else speicher_lesen_nvram_flag = TRUE;
|
|||
|
|
|||
|
instr(i, 0, ";"+speicher_lesen_parameter+";", ";ROMX;");
|
|||
|
if ( i == -1 ) speicher_lesen_romx_flag = FALSE; else speicher_lesen_romx_flag = TRUE;
|
|||
|
|
|||
|
instr(i, 0, ";"+speicher_lesen_parameter+";", ";RAMXX;");
|
|||
|
if ( i == -1 ) speicher_lesen_ramxx_flag = FALSE; else speicher_lesen_ramxx_flag = TRUE;
|
|||
|
}
|
|||
|
|
|||
|
//IDENT-Typ ermitteln: DS2, BMW Fast oder UDS?
|
|||
|
INP1apiJob(sgbd,"IDENT","","");
|
|||
|
INP1apiResultText(fehlerflag,temp,"ID_DATUM_KW",1,"");//Hat nur DS2
|
|||
|
if ((fehlerflag == TRUE) && (temp != ""))
|
|||
|
{
|
|||
|
ident_typ= 1;//DS2
|
|||
|
}
|
|||
|
else//UDS, BMW Fast
|
|||
|
{
|
|||
|
INP1apiResultText(fehlerflag,temp,"ID_SGBD_INDEX",1,"");
|
|||
|
if ((fehlerflag == TRUE) && (temp != "")) ident_typ= 3; //Hat nur UDS (ISO 14229)
|
|||
|
else ident_typ= 2; //sonst BMW Fast
|
|||
|
}
|
|||
|
}
|
|||
|
// -- EOF --
|
|||
|
// end of :#include "GRPCHECK.SRC"
|
|||
|
// start of :#include "FS_LESEN.SRC"
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* INPA Library-Funktionen FS_LESEN.SRC
|
|||
|
//*
|
|||
|
//* mindestens INPA 5.0.1
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
//* Gall TI-430
|
|||
|
//**********************************************************************
|
|||
|
//* History:
|
|||
|
//* 04.07.2000 rd V0.03 Ersterstellung
|
|||
|
//* 21.11.2000 rd V0.10 Umweltbedingungen als Zahl oder Text ( 0-n, Hex )
|
|||
|
//* 02.03.2001 rd V0.11 Shadowspeicher umbenannt in Infospeicher
|
|||
|
//* 25.04.2002 rd V1.00 Erweiterung HS_LESEN
|
|||
|
//* 22.10.2002 rd V1.01 Erweiterung FS_LESEN
|
|||
|
//* V1.01 PCODE und PCODE7 Ausgabe neu
|
|||
|
//* V1.01 Fehlerbehandlung verbessert
|
|||
|
//* 19.11.2002 iS V1.02 Fehlerbehandlung F_ORT_TEXT, F_UW_ANZ, F_PCODE
|
|||
|
//* 16.02.2004 rd V2.00 Umstellung auf 32-Bit Version
|
|||
|
//* 30.03.2006 GA V3.00 Erweiterung auf UDS (ISO 14229)
|
|||
|
//* GA V3.00 Fehlerausgaben korrigiert und erweitert
|
|||
|
//* 28.06.2006 GA V3.01 Bei UDS: Ausgabe "F_UW_DATUM_ZEIT" durch "F_UW_ZEIT" ersetzt, da Result entf<74>llt
|
|||
|
//* 19.10.2006 GA V3.02 Bei DS2: wurde nicht angezogen da if-Bedingung nicht korrekt gewesen ist.
|
|||
|
//* GA V3.02 Result: F_UW_ZEIT von Unterprg.: fs_protokoll_uwb in fs_protokoll_uwb_uds verschoben
|
|||
|
//* GA V3.02 Result: F_EREIGNIS_DTC: Text wurde inverse ausgegeben
|
|||
|
//* 07.02.2007 GA V3.03 Result: F_EREIGNIS_DTC: Erkl<6B>render Text, was ein Ereinis DTC ist, war falsch
|
|||
|
//**********************************************************************
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Globale Variablen
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
int _FsMode = 0x7FF; // alles ein
|
|||
|
string _FsFileMode = "w";
|
|||
|
string _PreInfoFile = "";
|
|||
|
string _PostInfoFile = "";
|
|||
|
string _ApiFsJobName = "FS_LESEN";
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Deklaration der Funktionen
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
extern INPAapiFsMode_neu ( in: int FsMode, in: string FsFileMode,
|
|||
|
in: string PreInfoFile, in: string PostInfoFile,
|
|||
|
in: string ApiFsJobName);
|
|||
|
|
|||
|
extern INPAapiFsLesen_neu( in: string ecu, in: string FileName);
|
|||
|
|
|||
|
extern fs_protokoll_ort(in: int nr);
|
|||
|
extern fs_protokoll_ort_uds(in: int nr);
|
|||
|
extern fs_protokoll_PCode(in: int nr);
|
|||
|
extern fs_protokoll_PCode7(in: int nr);
|
|||
|
extern fs_protokoll_SAECode(in: int nr);
|
|||
|
extern fs_protokoll_hfk(in: int nr);
|
|||
|
extern fs_protokoll_hfk_uds(in: int nr);
|
|||
|
extern fs_protokoll_art(in: int nr);
|
|||
|
extern fs_protokoll_art_uds(in: int nr);
|
|||
|
extern fs_protokoll_art_e(in: int nr);
|
|||
|
extern fs_protokoll_uwb(in: int nr);
|
|||
|
extern fs_protokoll_uwb_uds(in: int nr);
|
|||
|
extern fs_protokoll_hex(in: int nr);
|
|||
|
extern fs_protokoll_telantwort(in: int nr);
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* INPAapiFsMode_neu kompatibel mit INPAapiFsMode
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
INPAapiFsMode_neu( in: int FsMode,
|
|||
|
in: string FsFileMode,
|
|||
|
in: string PreInfoFile,
|
|||
|
in: string PostInfoFile,
|
|||
|
in: string ApiFsJobName)
|
|||
|
{
|
|||
|
_FsMode = FsMode;
|
|||
|
_FsFileMode = FsFileMode;
|
|||
|
_PreInfoFile = PreInfoFile;
|
|||
|
_PostInfoFile = PostInfoFile;
|
|||
|
_ApiFsJobName = ApiFsJobName;
|
|||
|
|
|||
|
|
|||
|
INPAapiFsMode(_FsMode, _FsFileMode, _PreInfoFile, _PostInfoFile, _ApiFsJobName);
|
|||
|
if (_ApiFsJobName=="") _ApiFsJobName="FS_LESEN";
|
|||
|
}
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* INPAapiFsLesen_neu kompatibel mit INPAapiFsLesen
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
INPAapiFsLesen_neu( in: string ecu, in: string FileName)
|
|||
|
{
|
|||
|
string _ecu;
|
|||
|
string _FileName;
|
|||
|
bool rc;
|
|||
|
int i;
|
|||
|
int k;
|
|||
|
int len;
|
|||
|
int x1;
|
|||
|
long xL;
|
|||
|
string temp1;
|
|||
|
string temp2;
|
|||
|
string temp3;
|
|||
|
string temp11;
|
|||
|
string temp12;
|
|||
|
string temp21;
|
|||
|
string temp22;
|
|||
|
int F_VERSION;
|
|||
|
string JOB_STATUS;
|
|||
|
string JOB_MESSAGE;
|
|||
|
string VARIANTE;
|
|||
|
int SETS;
|
|||
|
int UW_SETS;
|
|||
|
string FS_CODE;
|
|||
|
string F_PCODE;
|
|||
|
string F_PCODE7;
|
|||
|
string F1_VERSION;
|
|||
|
int errorcode; // EDIABAS Fehlernummer
|
|||
|
string error_text; // EDIABAS Fehlertext
|
|||
|
string errorcode_text; // EDIABAS Fehlernummer als Text
|
|||
|
|
|||
|
string sgbd_version; // aus INFO auslesen, um bei Fehlern die Version angeben zu k<>nnen
|
|||
|
|
|||
|
_ecu = ecu;
|
|||
|
_FileName = FileName;
|
|||
|
|
|||
|
|
|||
|
//SGBD-Version auslesen
|
|||
|
sgbd_version= "???";
|
|||
|
INPAapiJob(_ecu,"INFO","","");
|
|||
|
INP1apiResultText(rc, sgbd_version, "REVISION", 1, "");
|
|||
|
|
|||
|
INPAapiJob(_ecu, _ApiFsJobName,"","");
|
|||
|
INP1apiResultInt(rc, F_VERSION, "F_VERSION",1 );
|
|||
|
|
|||
|
INP1apiErrorCode(errorcode);
|
|||
|
|
|||
|
//UDS:
|
|||
|
if ((rc == TRUE) && ( F_VERSION == 3 ))
|
|||
|
{
|
|||
|
getdate(temp1);
|
|||
|
gettime(temp2);
|
|||
|
INPAapiResultSets(SETS);
|
|||
|
INPAapiResultText(VARIANTE, "VARIANTE", 0, "");
|
|||
|
INPAapiResultText(JOB_STATUS, "JOB_STATUS", SETS, "");
|
|||
|
fileopen ( _FileName, _FsFileMode);
|
|||
|
|
|||
|
if (_ApiFsJobName == "IS_LESEN")
|
|||
|
{
|
|||
|
filewrite( " I N F O S P E I C H E R L E S E N");
|
|||
|
filewrite( " -----------------------------------");
|
|||
|
}
|
|||
|
else
|
|||
|
if (_ApiFsJobName == "HS_LESEN")
|
|||
|
{
|
|||
|
filewrite( " H I S T O R I E N S P E I C H E R L E S E N");
|
|||
|
filewrite( " ---------------------------------------------");
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
filewrite( " F E H L E R S P E I C H E R L E S E N");
|
|||
|
filewrite( " ---------------------------------------");
|
|||
|
}
|
|||
|
|
|||
|
filewrite("");
|
|||
|
filewrite("Datum : "+temp1+" "+temp2);
|
|||
|
if (_ecu != VARIANTE) filewrite("ECU : "+_ecu);
|
|||
|
filewrite("JobStatus: "+JOB_STATUS);
|
|||
|
filewrite("Variante : "+VARIANTE+".PRG");
|
|||
|
filewrite("Version : "+sgbd_version);
|
|||
|
filewrite( "-------------------------------------------------------------------------------");
|
|||
|
|
|||
|
if ( JOB_STATUS == "OKAY")
|
|||
|
{
|
|||
|
filewrite( "");
|
|||
|
if (SETS == 1)
|
|||
|
filewrite( " >>>>>>>>>> Kein Fehler gefunden <<<<<<<<<<<");
|
|||
|
else
|
|||
|
{
|
|||
|
inttostring(SETS-1,temp1);
|
|||
|
if ((SETS-1) < 10) temp1= " "+temp1;//Formatierung der Fehleranzahl, wenn sie kleiner 10 ist
|
|||
|
filewrite( "ERGEBNIS : "+temp1+" Fehler im Fehlerspeicher!");
|
|||
|
if ((_FsMode & 0x100) == 0)
|
|||
|
{
|
|||
|
i=1;
|
|||
|
while ( i < SETS )
|
|||
|
{
|
|||
|
if (_FsMode != 0)
|
|||
|
filewrite( "-------------------------------------------------------------------------------");
|
|||
|
if ((_FsMode & 0x01) != 0) fs_protokoll_ort_uds(i);
|
|||
|
if ((_FsMode & 0x04) != 0) fs_protokoll_art_uds(i);
|
|||
|
if ((_FsMode & 0x40) != 0) fs_protokoll_hex(i);
|
|||
|
i=i+1;
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
// Detail lesen
|
|||
|
i=1;
|
|||
|
StrArrayDelete(f_ort_nr_buffer);
|
|||
|
StrArrayDelete(f_ort_text_buffer);
|
|||
|
|
|||
|
while ( i < SETS )
|
|||
|
{
|
|||
|
INP1apiResultText(rc,temp1, "F_ORT_TEXT", i, "");
|
|||
|
if (rc != TRUE) temp1="??????";
|
|||
|
StrArrayWrite(f_ort_text_buffer,i,temp1);
|
|||
|
|
|||
|
INP1apiResultBinary(rc,"F_HEX_CODE",i);//Fehlerort Nr. bei UDS: 3 Bytes, daher mit long arbeiten. (kein INPAapiResultText(temp1, "F_ORT_NR", i, "");....!) ...ergibt diese L<>sung
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
GetBinaryDataString (temp1,len);
|
|||
|
midstr(temp1,temp1,0,6);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
temp1= "??????";
|
|||
|
filewrite("");
|
|||
|
filewrite("### Fehler beim Lesen des Results: F_HEX_CODE ###");
|
|||
|
filewrite("");
|
|||
|
INP1apiErrorCode(errorcode);
|
|||
|
if (errorcode != 0)
|
|||
|
{
|
|||
|
inttostring(errorcode, errorcode_text);
|
|||
|
INP1apiErrorText(error_text);
|
|||
|
error_text= "Ediabas-Fehlermeldung Nr.: "+errorcode_text+": "+ error_text;
|
|||
|
ftextout(error_text ,2,0,0,0);
|
|||
|
}
|
|||
|
}
|
|||
|
StrArrayWrite(f_ort_nr_buffer,i,temp1);
|
|||
|
|
|||
|
i=i+1;
|
|||
|
}
|
|||
|
|
|||
|
i=1;
|
|||
|
while ( i < SETS )
|
|||
|
{
|
|||
|
if (_FsMode != 0)
|
|||
|
filewrite( "-------------------------------------------------------------------------------");
|
|||
|
|
|||
|
StrArrayRead(f_ort_nr_buffer,i,FS_CODE);
|
|||
|
INPAapiJob(_ecu, _ApiFsJobName+"_DETAIL", "0x"+FS_CODE, "");
|
|||
|
INP1apiResultSets(rc, UW_SETS);
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
INPAapiResultText(JOB_STATUS, "JOB_STATUS", UW_SETS, "");
|
|||
|
if ( JOB_STATUS == "OKAY")
|
|||
|
{
|
|||
|
if ((_FsMode & 0x01) != 0) fs_protokoll_ort_uds(1);
|
|||
|
if ((_FsMode & 0x200) != 0) fs_protokoll_SAECode(1);//0x200 von BMW Fast f<>r PCode genommen
|
|||
|
if ((_FsMode & 0x20) != 0) fs_protokoll_hfk_uds(1);
|
|||
|
k=1;
|
|||
|
|
|||
|
while ( k < UW_SETS )
|
|||
|
{
|
|||
|
filewrite( "");
|
|||
|
if ( UW_SETS > 2 )
|
|||
|
{
|
|||
|
inttostring(k,temp1);
|
|||
|
filewrite( temp1 + ". Umweltsatz");
|
|||
|
}
|
|||
|
if ((_FsMode & 0x02) != 0) fs_protokoll_uwb_uds(k);
|
|||
|
k=k+1;
|
|||
|
}
|
|||
|
if ((_FsMode & 0x04) != 0) fs_protokoll_art_uds(1);
|
|||
|
if ((_FsMode & 0x04) != 0) fs_protokoll_art_e(1);
|
|||
|
if ((_FsMode & 0x40) != 0) fs_protokoll_hex(1);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if ((_FsMode & 0x01) != 0)
|
|||
|
{
|
|||
|
filewrite( "");
|
|||
|
StrArrayRead(f_ort_text_buffer,i,temp2);
|
|||
|
filewrite("0x"+FS_CODE+" "+temp2);
|
|||
|
}
|
|||
|
INP1apiResultText(rc,JOB_MESSAGE, "JOB_MESSAGE", UW_SETS, "");
|
|||
|
if (rc == TRUE)
|
|||
|
filewrite( _ApiFsJobName+"_DETAIL: JobStatus: "+JOB_STATUS+" --> "+JOB_MESSAGE) ;
|
|||
|
else filewrite( _ApiFsJobName+"_DETAIL: JobStatus: "+JOB_STATUS);
|
|||
|
|
|||
|
fs_protokoll_telantwort(UW_SETS);//Telegrammantwort zur Fehleranalyse mit ausgeben
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if ((_FsMode & 0x01) != 0)
|
|||
|
{
|
|||
|
filewrite( "");
|
|||
|
StrArrayRead(f_ort_text_buffer,i,temp2);
|
|||
|
filewrite("0x"+FS_CODE+" "+temp2);
|
|||
|
}
|
|||
|
INP1apiErrorText(temp1);
|
|||
|
filewrite( _ApiFsJobName+"_DETAIL: "+temp1);
|
|||
|
}
|
|||
|
i=i+1;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
filewrite( "===============================================================================");
|
|||
|
fileclose();
|
|||
|
}
|
|||
|
//BMW FAST:
|
|||
|
else if ((rc == TRUE) && ( F_VERSION == 2 ))
|
|||
|
{
|
|||
|
getdate(temp1);
|
|||
|
gettime(temp2);
|
|||
|
INPAapiResultSets(SETS);
|
|||
|
INPAapiResultText(VARIANTE, "VARIANTE", 0, "");
|
|||
|
INPAapiResultText(JOB_STATUS, "JOB_STATUS", SETS, "");
|
|||
|
fileopen ( _FileName, _FsFileMode);
|
|||
|
|
|||
|
if (_ApiFsJobName == "IS_LESEN")
|
|||
|
{
|
|||
|
filewrite( " I N F O S P E I C H E R L E S E N");
|
|||
|
filewrite( " -----------------------------------");
|
|||
|
}
|
|||
|
else
|
|||
|
if (_ApiFsJobName == "HS_LESEN")
|
|||
|
{
|
|||
|
filewrite( " H I S T O R I E N S P E I C H E R L E S E N");
|
|||
|
filewrite( " ---------------------------------------------");
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
filewrite( " F E H L E R S P E I C H E R L E S E N");
|
|||
|
filewrite( " ---------------------------------------");
|
|||
|
}
|
|||
|
|
|||
|
filewrite("");
|
|||
|
filewrite("Datum : "+temp1+" "+temp2);
|
|||
|
if (_ecu != VARIANTE) filewrite("ECU : "+_ecu);
|
|||
|
filewrite("JobStatus: "+JOB_STATUS);
|
|||
|
filewrite("Variante : "+VARIANTE+".PRG");
|
|||
|
filewrite("Version : "+sgbd_version);
|
|||
|
filewrite( "-------------------------------------------------------------------------------");
|
|||
|
|
|||
|
if ( JOB_STATUS == "OKAY")
|
|||
|
{
|
|||
|
filewrite( "");
|
|||
|
if (SETS == 1)
|
|||
|
filewrite( " >>>>>>>>>> Kein Fehler gefunden <<<<<<<<<<<");
|
|||
|
else
|
|||
|
{
|
|||
|
inttostring(SETS-1,temp1);
|
|||
|
if ((SETS-1) < 10) temp1= " "+temp1;//Formatierung der Fehleranzahl, wenn sie kleiner 10 ist
|
|||
|
filewrite( "ERGEBNIS : "+temp1+" Fehler im Fehlerspeicher!");
|
|||
|
if ((_FsMode & 0x100) == 0)
|
|||
|
{
|
|||
|
i=1;
|
|||
|
while ( i < SETS )
|
|||
|
{
|
|||
|
if (_FsMode != 0)
|
|||
|
filewrite( "-------------------------------------------------------------------------------");
|
|||
|
if ((_FsMode & 0x01) != 0) fs_protokoll_ort(i);
|
|||
|
if ((_FsMode & 0x04) != 0) fs_protokoll_art(i);
|
|||
|
if ((_FsMode & 0x40) != 0) fs_protokoll_hex(i);
|
|||
|
i=i+1;
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
// Detail lesen
|
|||
|
i=1;
|
|||
|
StrArrayDelete(f_ort_nr_buffer);
|
|||
|
StrArrayDelete(f_ort_text_buffer);
|
|||
|
|
|||
|
while ( i < SETS )
|
|||
|
{
|
|||
|
INP1apiResultText(rc,temp1, "F_ORT_TEXT", i, "");
|
|||
|
if (rc != TRUE) temp1="????";
|
|||
|
|
|||
|
StrArrayWrite(f_ort_text_buffer,i,temp1);
|
|||
|
INPAapiResultInt(x1, "F_ORT_NR", i);
|
|||
|
inttohexstring(x1, 4, temp1);
|
|||
|
StrArrayWrite(f_ort_nr_buffer,i,temp1);
|
|||
|
i=i+1;
|
|||
|
}
|
|||
|
|
|||
|
i=1;
|
|||
|
while ( i < SETS )
|
|||
|
{
|
|||
|
if (_FsMode != 0)
|
|||
|
filewrite( "-------------------------------------------------------------------------------");
|
|||
|
|
|||
|
StrArrayRead(f_ort_nr_buffer,i,FS_CODE);
|
|||
|
INPAapiJob(_ecu, _ApiFsJobName+"_DETAIL", "0x"+FS_CODE, "");
|
|||
|
INP1apiResultSets(rc, UW_SETS);
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
INPAapiResultText(JOB_STATUS, "JOB_STATUS", UW_SETS, "");
|
|||
|
if ( JOB_STATUS == "OKAY")
|
|||
|
{
|
|||
|
if ((_FsMode & 0x01) != 0) fs_protokoll_ort(1);
|
|||
|
if ((_FsMode & 0x200) != 0) fs_protokoll_PCode(1);
|
|||
|
if ((_FsMode & 0x400) != 0) fs_protokoll_PCode7(1);
|
|||
|
if ((_FsMode & 0x20) != 0) fs_protokoll_hfk(1);
|
|||
|
k=1;
|
|||
|
while ( k < UW_SETS )
|
|||
|
{
|
|||
|
filewrite( "");
|
|||
|
if ( UW_SETS > 2 )
|
|||
|
{
|
|||
|
inttostring(k,temp1);
|
|||
|
filewrite( temp1 + ". Umweltsatz");
|
|||
|
}
|
|||
|
if ((_FsMode & 0x02) != 0) fs_protokoll_uwb(k);
|
|||
|
k=k+1;
|
|||
|
}
|
|||
|
if ((_FsMode & 0x04) != 0) fs_protokoll_art(1);
|
|||
|
if ((_FsMode & 0x04) != 0) fs_protokoll_art_e(1);
|
|||
|
if ((_FsMode & 0x40) != 0) fs_protokoll_hex(1);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if ((_FsMode & 0x01) != 0)
|
|||
|
{
|
|||
|
filewrite( "");
|
|||
|
StrArrayRead(f_ort_text_buffer,i,temp2);
|
|||
|
filewrite( "0x"+FS_CODE+" "+temp2);
|
|||
|
}
|
|||
|
INP1apiResultText(rc,JOB_MESSAGE, "JOB_MESSAGE", UW_SETS, "");
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
filewrite( _ApiFsJobName+"_DETAIL: JobStatus: "+JOB_STATUS+" --> "+JOB_MESSAGE) ;
|
|||
|
}
|
|||
|
else filewrite( _ApiFsJobName+"_DETAIL: JobStatus: "+JOB_STATUS);
|
|||
|
fs_protokoll_telantwort(UW_SETS);//Telegrammantwort zur Fehleranalyse mit ausgeben
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if ((_FsMode & 0x01) != 0)
|
|||
|
{
|
|||
|
filewrite( "");
|
|||
|
StrArrayRead(f_ort_text_buffer,i,temp2);
|
|||
|
filewrite( "0x"+FS_CODE+" "+temp2);
|
|||
|
}
|
|||
|
INP1apiErrorText(temp1);
|
|||
|
filewrite( _ApiFsJobName+"_DETAIL: "+temp1);
|
|||
|
}
|
|||
|
i=i+1;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
filewrite( "===============================================================================");
|
|||
|
fileclose();
|
|||
|
}
|
|||
|
//DS2
|
|||
|
else if (errorcode == 134)//134=SYS-0014: Result nicht gefunden: 'F_VERSION'
|
|||
|
{
|
|||
|
INPAapiFsLesen( _ecu, _FileName);
|
|||
|
}
|
|||
|
//Fehlerhafter Aufruf
|
|||
|
else
|
|||
|
{
|
|||
|
INPAapiCheckJobStatus("OKAY");//Damit der Bediener die Fehlermeldung best<73>tigen mu<6D>
|
|||
|
getdate(temp1);
|
|||
|
gettime(temp2);
|
|||
|
INP1apiErrorText(temp3);
|
|||
|
fileopen ( _FileName, _FsFileMode);
|
|||
|
|
|||
|
if (_ApiFsJobName == "IS_LESEN")
|
|||
|
{
|
|||
|
filewrite( " I N F O S P E I C H E R L E S E N");
|
|||
|
filewrite( " -----------------------------------");
|
|||
|
}
|
|||
|
else
|
|||
|
if (_ApiFsJobName == "HS_LESEN")
|
|||
|
{
|
|||
|
filewrite( " H I S T O R I E N S P E I C H E R L E S E N");
|
|||
|
filewrite( " ---------------------------------------------");
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
filewrite( " F E H L E R S P E I C H E R L E S E N");
|
|||
|
filewrite( " ---------------------------------------");
|
|||
|
}
|
|||
|
|
|||
|
filewrite( "");
|
|||
|
filewrite( "Datum : "+temp1+" "+temp2);
|
|||
|
filewrite( "ECU : "+_ecu);
|
|||
|
filewrite( "JobStatus: "+JOB_STATUS+"-->"+temp3) ;
|
|||
|
filewrite( "-------------------------------------------------------------------------------");
|
|||
|
fileclose();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Fehlerprotokollausgabe Fehlerort f<>r DS2 und BMW Fast
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
fs_protokoll_ort(in: int nr)
|
|||
|
{
|
|||
|
int i;
|
|||
|
int x1;
|
|||
|
bool rc;
|
|||
|
string temp1;
|
|||
|
string temp2;
|
|||
|
|
|||
|
i=nr;
|
|||
|
filewrite( "");
|
|||
|
INP1apiResultInt(rc,x1, "F_ORT_NR", i);
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
inttohexstring(x1, 4, temp1);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
temp1="????";
|
|||
|
}
|
|||
|
|
|||
|
INP1apiResultText(rc,temp2, "F_ORT_TEXT", i, "");
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
filewrite( "0x"+temp1+" "+temp2);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
filewrite( "0x"+temp1+" "+"????");
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Fehlerprotokollausgabe Fehlerort f<>r UDS (ISO 14229)
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
fs_protokoll_ort_uds(in: int nr)
|
|||
|
{
|
|||
|
int i;
|
|||
|
int len;
|
|||
|
bool rc;
|
|||
|
string temp1;
|
|||
|
string temp2;
|
|||
|
|
|||
|
i=nr;
|
|||
|
filewrite( "");
|
|||
|
|
|||
|
INP1apiResultBinary(rc,"F_HEX_CODE",i);//Fehlerort Nr. bei UDS: 3 Bytes, daher mit long arbeiten. (kein INPAapiResultText(temp1, "F_ORT_NR", i, "");....!) ...ergibt diese L<>sung
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
if (_ApiFsJobName == "FS_LESEN")
|
|||
|
{
|
|||
|
GetBinaryDataString (temp1,len);
|
|||
|
midstr(temp1,temp1,0,6);
|
|||
|
}
|
|||
|
else//IS_LESEN
|
|||
|
{
|
|||
|
GetBinaryDataString (temp1,len);
|
|||
|
midstr(temp1,temp1,2,6);//Byte 0, Zeichen 0 und 1 sind das severity Byte!
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
temp1= "??????";
|
|||
|
}
|
|||
|
|
|||
|
INP1apiResultText(rc,temp2, "F_ORT_TEXT", i, "");
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
filewrite( "0x"+temp1+" "+temp2);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
filewrite( "0x"+temp1+" "+"??????");
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Fehlerprotokollausgabe PCODE
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
fs_protokoll_PCode(in: int nr)
|
|||
|
{
|
|||
|
int i;
|
|||
|
int x1;
|
|||
|
bool rc;
|
|||
|
string tempPcodeText;
|
|||
|
string tempPcodeString;
|
|||
|
string tempPcodeHex;
|
|||
|
|
|||
|
i=nr;
|
|||
|
INP1apiResultText(rc,tempPcodeString, "F_PCODE_STRING", i,"");
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
INP1apiResultText(rc,tempPcodeText, "F_PCODE_TEXT", i, "");
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
INP1apiResultInt(rc,x1, "F_PCODE", i);
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
inttohexstring(x1, 4, tempPcodeHex);
|
|||
|
tempPcodeHex= "0x"+tempPcodeHex;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
tempPcodeHex = "????";
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
tempPcodeText = "????";
|
|||
|
}
|
|||
|
|
|||
|
if (tempPcodeString == "??")
|
|||
|
{
|
|||
|
filewrite( "");
|
|||
|
filewrite( tempPcodeHex+" "+tempPcodeText);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if (tempPcodeString != "--")
|
|||
|
{
|
|||
|
filewrite( "");
|
|||
|
filewrite( tempPcodeText);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Fehlerprotokollausgabe PCODE7
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
fs_protokoll_PCode7(in: int nr)
|
|||
|
{
|
|||
|
int i;
|
|||
|
int x1;
|
|||
|
bool rc;
|
|||
|
string tempPcode7Text;
|
|||
|
string tempPcode7String;
|
|||
|
string tempPcode7Hex;
|
|||
|
|
|||
|
i=nr;
|
|||
|
INP1apiResultText(rc,tempPcode7String, "F_PCODE7_STRING", i,"");
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
INP1apiResultText(rc,tempPcode7Text, "F_PCODE7_TEXT", i, "");
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
INP1apiResultInt(rc,x1, "F_PCODE7", i);
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
inttohexstring(x1, 4, tempPcode7Hex);
|
|||
|
tempPcode7Hex= "0x"+tempPcode7Hex;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
tempPcode7Hex = "????";
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
tempPcode7Text = "????";
|
|||
|
}
|
|||
|
|
|||
|
if (tempPcode7String == "??")
|
|||
|
{
|
|||
|
filewrite( "");
|
|||
|
filewrite( tempPcode7Hex+" "+tempPcode7Text);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if (tempPcode7String != "--")
|
|||
|
{
|
|||
|
filewrite( "");
|
|||
|
filewrite( tempPcode7Text);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Fehlerprotokollausgabe SAE Code f<>r UDS
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
fs_protokoll_SAECode(in: int nr)
|
|||
|
{
|
|||
|
int i;
|
|||
|
int x1;
|
|||
|
bool rc;
|
|||
|
string tempSAECodeText;
|
|||
|
string tempSAECodeString;
|
|||
|
string tempSAECodeHex;
|
|||
|
|
|||
|
i=nr;
|
|||
|
INP1apiResultText(rc,tempSAECodeString, "F_SAE_CODE_STRING", i,"");
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
INP1apiResultText(rc,tempSAECodeText, "F_SAE_CODE_TEXT", i, "");
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
INP1apiResultInt(rc,x1, "F_SAE_CODE", i);
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
inttohexstring(x1, 4, tempSAECodeHex);
|
|||
|
tempSAECodeHex= "0x"+tempSAECodeHex;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
tempSAECodeHex = "????";
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
tempSAECodeText = "????";
|
|||
|
}
|
|||
|
|
|||
|
if (tempSAECodeString == "??")
|
|||
|
{
|
|||
|
filewrite( "");
|
|||
|
filewrite( tempSAECodeHex+" "+tempSAECodeText);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if (tempSAECodeString != "--")
|
|||
|
{
|
|||
|
filewrite( "");
|
|||
|
filewrite( tempSAECodeText);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Fehlerprotokollausgabe Fehlerh<72>ufigkeit
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
fs_protokoll_hfk(in: int nr)
|
|||
|
{
|
|||
|
int i;
|
|||
|
bool rc;
|
|||
|
string temp1;
|
|||
|
int f_hfk;
|
|||
|
int f_lz;
|
|||
|
|
|||
|
i=nr;
|
|||
|
filewrite( "");
|
|||
|
|
|||
|
INP1apiResultInt(rc,f_hfk,"F_HFK",i);
|
|||
|
if (rc == FALSE) temp1 ="????";
|
|||
|
if (temp1 !="-1")
|
|||
|
{
|
|||
|
inttostring(f_hfk,temp1);
|
|||
|
if (f_hfk < 10) temp1= " "+temp1;//Formatierung der Nr der Fehlerh<72>ufigkeit, wenn sie kleiner 10 ist
|
|||
|
filewrite( "Fehlerh<72>ufigkeit: "+ temp1);
|
|||
|
}
|
|||
|
|
|||
|
INP1apiResultInt(rc,f_lz,"F_LZ",i);
|
|||
|
if (rc == FALSE) temp1 ="????";
|
|||
|
if (temp1 !="-1")
|
|||
|
{
|
|||
|
inttostring(f_lz,temp1);
|
|||
|
if (f_lz < 10) temp1= " "+temp1;//Formatierung der Nr des Logistikz<6B>hlers, wenn sie kleiner 10 ist
|
|||
|
filewrite( "Logistikz<6B>hler : "+ temp1);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Fehlerprotokollausgabe Fehlerh<72>ufigkeit f<>r UDS
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
fs_protokoll_hfk_uds(in: int nr)
|
|||
|
{
|
|||
|
int i;
|
|||
|
int x1;
|
|||
|
bool rc;
|
|||
|
string temp1;
|
|||
|
string temp2;
|
|||
|
|
|||
|
i=nr;
|
|||
|
filewrite( "");
|
|||
|
//FS <20>berlauf
|
|||
|
INP1apiResultInt(rc,x1, "F_UEBERLAUF", i);
|
|||
|
if ((rc == TRUE) && (x1==1))
|
|||
|
{
|
|||
|
filewrite( "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
|
|||
|
if (_ApiFsJobName == "IS_LESEN")
|
|||
|
filewrite("++++++++++++++++++++++++ Infospeicher ist <20>bergelaufen! +++++++++++++++++++++++");
|
|||
|
else
|
|||
|
filewrite("+++++++++++++++++++++++ Fehlerspeicher ist <20>bergelaufen! ++++++++++++++++++++++");
|
|||
|
filewrite( "+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++");
|
|||
|
filewrite( "");
|
|||
|
}
|
|||
|
|
|||
|
//Fehlerh<72>ufigkeit
|
|||
|
INP1apiResultInt(rc,x1, "F_HFK", i);
|
|||
|
if (rc == FALSE)
|
|||
|
{
|
|||
|
temp1 ="????";
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if (x1 == -1)
|
|||
|
{
|
|||
|
temp1= "wird nicht unterst<73>tzt";
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
inttostring(x1,temp1);
|
|||
|
if (x1 < 10) temp1= " "+temp1;//Formatierung der Nr der Fehlerh<72>ufigkeit, wenn sie kleiner 10 ist
|
|||
|
}
|
|||
|
}
|
|||
|
filewrite( "Fehlerh<72>ufigkeit: "+ temp1);
|
|||
|
|
|||
|
//Heilungsz<73>hler
|
|||
|
INP1apiResultInt(rc,x1, "F_HLZ", i);
|
|||
|
if (rc == FALSE)
|
|||
|
{
|
|||
|
temp1 ="????";
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
if (x1 == -1)
|
|||
|
{
|
|||
|
temp1= "wird nicht unterst<73>tzt";
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
inttostring(x1,temp1);
|
|||
|
if (x1 < 10) temp1= " "+temp1;//Formatierung des Heilungsz<73>hlers, wenn er kleiner 10 ist
|
|||
|
}
|
|||
|
}
|
|||
|
filewrite( "Heilungsz<73>hler : "+ temp1);
|
|||
|
}
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Fehlerprotokollausgabe Fehlerarten
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
fs_protokoll_art(in: int nr)
|
|||
|
{
|
|||
|
int i;
|
|||
|
bool rc;
|
|||
|
string temp1;
|
|||
|
|
|||
|
i=nr;
|
|||
|
filewrite( "");
|
|||
|
INP1apiResultText(rc,temp1, "F_SYMPTOM_TEXT", i, "");
|
|||
|
if (rc == FALSE) temp1 ="????";
|
|||
|
if (temp1 !="--") filewrite( " "+ temp1);
|
|||
|
INP1apiResultText(rc,temp1, "F_READY_TEXT", i, "");
|
|||
|
if (rc == FALSE) temp1 ="????";
|
|||
|
if (temp1 !="--") filewrite( " "+ temp1);
|
|||
|
INP1apiResultText(rc,temp1, "F_VORHANDEN_TEXT", i, "");
|
|||
|
if (rc == FALSE) temp1 ="????";
|
|||
|
if (temp1 !="--") filewrite( " "+ temp1);
|
|||
|
INP1apiResultText(rc,temp1, "F_WARNUNG_TEXT", i, "");
|
|||
|
if (rc == FALSE) temp1 ="????";
|
|||
|
if (temp1 !="--") filewrite( " "+ temp1);
|
|||
|
}
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Fehlerprotokollausgabe erweiterte Fehlerarten
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
fs_protokoll_art_e(in: int nr)
|
|||
|
{
|
|||
|
int i;
|
|||
|
int k;
|
|||
|
int F_ART_ANZ;
|
|||
|
bool rc;
|
|||
|
string temp1;
|
|||
|
string temp2;
|
|||
|
|
|||
|
i=nr;
|
|||
|
INP1apiResultInt(rc,F_ART_ANZ, "F_ART_ANZ", i);
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
if ( F_ART_ANZ > 0 )
|
|||
|
{
|
|||
|
k=0;
|
|||
|
while ( k < F_ART_ANZ )
|
|||
|
{
|
|||
|
k = k + 1;
|
|||
|
inttostring(k,temp2);
|
|||
|
INP1apiResultText(rc,temp1, "F_ART"+temp2+"_TEXT", i, "");
|
|||
|
if (rc == FALSE) temp1 ="????";
|
|||
|
if (temp1 !="--") filewrite( " "+ temp1);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Fehlerprotokollausgabe Fehlerarten f<>r UDS
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
fs_protokoll_art_uds(in: int nr)
|
|||
|
{//Symptome entfallen bei UDS!
|
|||
|
int i;
|
|||
|
int x1;
|
|||
|
bool rc;
|
|||
|
string temp1;
|
|||
|
|
|||
|
i=nr;
|
|||
|
filewrite( "");
|
|||
|
INP1apiResultText(rc,temp1, "F_READY_TEXT", i, "");
|
|||
|
if (rc == FALSE) temp1 ="????";
|
|||
|
if (temp1 !="--") filewrite( " "+ temp1);
|
|||
|
INP1apiResultText(rc,temp1, "F_VORHANDEN_TEXT", i, "");
|
|||
|
if (rc == FALSE) temp1 ="????";
|
|||
|
if (temp1 !="--") filewrite( " "+ temp1);
|
|||
|
INP1apiResultText(rc,temp1, "F_WARNUNG_TEXT", i, "");
|
|||
|
if (rc == FALSE) temp1 ="????";
|
|||
|
if (temp1 !="--") filewrite( " "+ temp1);
|
|||
|
//Neu bei UDS:
|
|||
|
INP1apiResultInt(rc,x1, "F_EREIGNIS_DTC", i);
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
if (x1==0)
|
|||
|
{
|
|||
|
filewrite(" Dies ist kein Ereignis DTC. Das SG ist f<>r den Fehlerspeicheintrag (DTC) verantwortlich.");
|
|||
|
}
|
|||
|
else if (x1==1)
|
|||
|
{
|
|||
|
filewrite(" Dies ein Ereignis DTC. Das SG ist somit nicht f<>r den Fehlereintrag (DTC) verantwortlich.");
|
|||
|
filewrite(" Z.B. falsche oder fehlende Netzwerkinformationen.");
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
filewrite(" Fehler in SGBD! In Tabelle FOrtTexte, Spalte EREIGNIS_DTC mu<6D> 0 oder 1 stehen!");
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Fehlerprotokollausgabe Umweltbedingungen
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
fs_protokoll_uwb(in: int nr)
|
|||
|
{
|
|||
|
int i;
|
|||
|
int k;
|
|||
|
int len;
|
|||
|
int F_UW_ANZ;
|
|||
|
bool rc;
|
|||
|
string temp1;
|
|||
|
string temp2;
|
|||
|
string temp3;
|
|||
|
real realval;
|
|||
|
int pos;
|
|||
|
|
|||
|
i=nr;
|
|||
|
/* INP1apiResultText(rc,temp1, "F_UW_ZEIT", i, "10T");
|
|||
|
if (rc == FALSE)
|
|||
|
{
|
|||
|
temp1=" ????";
|
|||
|
}
|
|||
|
filewrite( " Absolute Zeit " + temp1+ " s");
|
|||
|
*/
|
|||
|
INP1apiResultText(rc,temp1, "F_UW_KM", i, "8L");
|
|||
|
if (rc == FALSE) temp1=" ????";
|
|||
|
if ((temp1 == "524280") && (ident_typ != 3)) temp1 = "-1";//Fehler<65>berlauf f<>r DS2 und BMW FAST, UDS liefert es von alleine
|
|||
|
|
|||
|
temp2 = "Kilometerstand ";
|
|||
|
filewrite( " " + temp2 + temp1 + " km");
|
|||
|
|
|||
|
|
|||
|
INP1apiResultInt(rc,F_UW_ANZ, "F_UW_ANZ", i);
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
if ( F_UW_ANZ > 0 )
|
|||
|
{
|
|||
|
k=0;
|
|||
|
while ( k < F_UW_ANZ )
|
|||
|
{
|
|||
|
k = k + 1;
|
|||
|
inttostring(k,temp2);
|
|||
|
|
|||
|
INP1apiResultText(rc,temp3, "F_UW"+temp2+"_EINH", i, "");
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
AnsiUpper(temp3,temp3);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
temp3 = "????";
|
|||
|
}
|
|||
|
if ((temp3 == "0-N") || (temp3 == "HEX"))
|
|||
|
{
|
|||
|
INP1apiResultText(rc,temp1, "F_UW"+temp2+"_TEXT", i, "-20T");
|
|||
|
if (rc == FALSE) temp1="???? ";
|
|||
|
if (temp1 !="-- ") //"--" + 18 Zeichen
|
|||
|
|
|||
|
{
|
|||
|
if ((_FsMode & 0x08) != 0)
|
|||
|
{
|
|||
|
INP1apiResultText(rc,temp3, "F_UW"+temp2+"_WERT", i, "28T");
|
|||
|
if (rc == FALSE) temp3="???? ";
|
|||
|
temp1 = temp1 + " " + temp3;
|
|||
|
}
|
|||
|
if ((_FsMode & 0x10) != 0)
|
|||
|
{
|
|||
|
INP1apiResultText(rc,temp3, "F_UW"+temp2+"_EINH", i, "");
|
|||
|
if (rc == FALSE) temp3="????";
|
|||
|
temp1 = temp1 + " " + temp3;
|
|||
|
}
|
|||
|
filewrite( " "+ temp1);
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
INP1apiResultText(rc,temp1, "F_UW"+temp2+"_TEXT", i, "-40T");
|
|||
|
if (rc == FALSE) temp1="???? ";
|
|||
|
if (temp1 !="-- ")
|
|||
|
{
|
|||
|
if ((_FsMode & 0x08) != 0)
|
|||
|
{
|
|||
|
INP1apiResultText(rc,temp3, "F_UW"+temp2+"_WERT", i, "8.2R");
|
|||
|
if (rc == FALSE) temp3=" ???? ";
|
|||
|
temp1 = temp1 + " " + temp3;
|
|||
|
}
|
|||
|
if ((_FsMode & 0x10) != 0)
|
|||
|
{
|
|||
|
INP1apiResultText(rc,temp3, "F_UW"+temp2+"_EINH", i, "");
|
|||
|
if (rc == FALSE) temp3="????";
|
|||
|
temp1 = temp1 + " " + temp3;
|
|||
|
}
|
|||
|
filewrite( " "+ temp1);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Fehlerprotokollausgabe Umweltbedingungen
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
fs_protokoll_uwb_uds(in: int nr)
|
|||
|
{
|
|||
|
int i;
|
|||
|
// int k;
|
|||
|
// int len;
|
|||
|
// int F_UW_ANZ;
|
|||
|
bool rc;
|
|||
|
string temp1;
|
|||
|
// string temp2;
|
|||
|
// string temp3;
|
|||
|
// real realval;
|
|||
|
// int pos;
|
|||
|
|
|||
|
i=nr;
|
|||
|
INP1apiResultText(rc,temp1, "F_UW_ZEIT", i, "10T");
|
|||
|
if (rc == FALSE)
|
|||
|
{
|
|||
|
temp1=" ????";
|
|||
|
}
|
|||
|
filewrite( " Absolute Zeit " + temp1+ " s");
|
|||
|
|
|||
|
fs_protokoll_uwb(i);
|
|||
|
}
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Fehlerprotokollausgabe Hexcode
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
fs_protokoll_hex(in: int nr)
|
|||
|
{
|
|||
|
string nl;
|
|||
|
int i;
|
|||
|
int x1;
|
|||
|
int x2;
|
|||
|
int x3;
|
|||
|
bool rc;
|
|||
|
string temp1;
|
|||
|
string temp2;
|
|||
|
string temp3;
|
|||
|
|
|||
|
chr(10,nl);
|
|||
|
i=nr;
|
|||
|
filewrite( "");
|
|||
|
INP1apiResultBinary(rc,"F_HEX_CODE", i);
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
GetBinaryDataString (temp1, x1);
|
|||
|
x2 = 0;
|
|||
|
x3 = 0;
|
|||
|
temp2="";
|
|||
|
while ( x2 < x1 )
|
|||
|
{
|
|||
|
midstr(temp3, temp1, x2, 2);
|
|||
|
temp2 = temp2 + temp3;
|
|||
|
x2 = x2 + 2;
|
|||
|
x3 = x3 + 1;
|
|||
|
if ( x2 < x1 )
|
|||
|
{
|
|||
|
if ( x3 < 16 )//Leerzeichen zwischen den Bytes
|
|||
|
{
|
|||
|
if ( x3 == 8 )
|
|||
|
temp2 = temp2 + " ";//Nach 8 Bytes zwei Leerz. dann wieder 8 Bytes schreiben
|
|||
|
else temp2 = temp2 + " ";
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
x3 = 0;
|
|||
|
temp2 = temp2 + nl + " ";
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
temp2 = "????";
|
|||
|
}
|
|||
|
filewrite( "Fehlercode: "+temp2);
|
|||
|
}
|
|||
|
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* Fehlerprotokollausgabe Telegrammantwort(en)
|
|||
|
//* Wird nur bei Fehlerhaften FS_LESEN_DETAIL ausgegeben
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
fs_protokoll_telantwort(in: int nr)
|
|||
|
{
|
|||
|
string nl;
|
|||
|
int i;
|
|||
|
int x1;
|
|||
|
int x2;
|
|||
|
int x3;
|
|||
|
bool rc;
|
|||
|
string temp1;
|
|||
|
string temp2;
|
|||
|
string temp3;
|
|||
|
string temp4;
|
|||
|
string temp5;
|
|||
|
|
|||
|
chr(10,nl);
|
|||
|
i=nr;
|
|||
|
filewrite( "");
|
|||
|
|
|||
|
if (ident_typ == 3)//3=UDS (ISO 14229)
|
|||
|
{
|
|||
|
if (_ApiFsJobName == "FS_LESEN")
|
|||
|
INP1apiResultBinary(rc,"_RESPONSE_SNAPSHOT", i);
|
|||
|
else INP1apiResultBinary(rc,"_RESPONSE_2000", i);//IS_LESEN
|
|||
|
}
|
|||
|
else//1=DS2, 2=BMW Fast
|
|||
|
{
|
|||
|
INP1apiResultBinary(rc,"_TEL_ANTWORT", i);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
GetBinaryDataString (temp1, x1);
|
|||
|
x2 = 0;
|
|||
|
x3 = 0;
|
|||
|
temp2="";
|
|||
|
while ( x2 < x1 )
|
|||
|
{
|
|||
|
midstr(temp3, temp1, x2, 2);
|
|||
|
temp2 = temp2 + temp3;
|
|||
|
x2 = x2 + 2;
|
|||
|
x3 = x3 + 1;
|
|||
|
if ( x2 < x1 )
|
|||
|
{
|
|||
|
if ( x3 < 16 )//Leerzeichen zwischen den Bytes
|
|||
|
{
|
|||
|
if ( x3 == 8 )
|
|||
|
temp2 = temp2 + " ";//Nach 8 Bytes zwei Leerz. dann wieder 8 Bytes schreiben
|
|||
|
else temp2 = temp2 + " ";
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
x3 = 0;
|
|||
|
temp2 = temp2 + nl + " ";
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
temp2 = "????--> Zur Analyse IFH-Trace benutzen!";
|
|||
|
}
|
|||
|
|
|||
|
//2. Telegramm nur f<>r UDS ausgeben
|
|||
|
if (ident_typ == 3)//3=UDS (ISO 14229)
|
|||
|
{
|
|||
|
if (_ApiFsJobName == "FS_LESEN")
|
|||
|
INP1apiResultBinary(rc,"_RESPONSE_EXTENDED_DATA", i);
|
|||
|
else INP1apiResultBinary(rc,"_RESPONSE_200X", i);//IS_LESEN
|
|||
|
|
|||
|
if (rc == TRUE)
|
|||
|
{
|
|||
|
GetBinaryDataString (temp1, x1);
|
|||
|
x2 = 0;
|
|||
|
x3 = 0;
|
|||
|
temp4="";
|
|||
|
while ( x2 < x1 )
|
|||
|
{
|
|||
|
midstr(temp3, temp1, x2, 2);
|
|||
|
temp4 = temp4 + temp3;
|
|||
|
x2 = x2 + 2;
|
|||
|
x3 = x3 + 1;
|
|||
|
if ( x2 < x1 )
|
|||
|
{
|
|||
|
if ( x3 < 16 )//Leerzeichen zwischen den Bytes
|
|||
|
{
|
|||
|
if ( x3 == 8 )
|
|||
|
temp4 = temp4 + " ";//Nach 8 Bytes zwei Leerz. dann wieder 8 Bytes schreiben
|
|||
|
else temp4 = temp4 + " ";
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
x3 = 0;
|
|||
|
temp4 = temp4 + nl + " ";
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
temp4 = "????--> Zur Analyse IFH-Trace benutzen!";
|
|||
|
}
|
|||
|
|
|||
|
filewrite("Telegramm-Antwort ab Service Identifier zur Analyse");
|
|||
|
if (_ApiFsJobName == "FS_LESEN")
|
|||
|
{
|
|||
|
filewrite("Data : "+temp2);
|
|||
|
filewrite("Snapshot : "+temp4);
|
|||
|
}
|
|||
|
else//IS_LESEN
|
|||
|
{
|
|||
|
filewrite("2000 : "+temp2);
|
|||
|
filewrite("200X : "+temp4);
|
|||
|
}
|
|||
|
}
|
|||
|
else//DS2, BMW Fast
|
|||
|
{
|
|||
|
filewrite("Telegramm-");
|
|||
|
filewrite("Antwort : "+temp2);
|
|||
|
}
|
|||
|
}
|
|||
|
// -- EOF --
|
|||
|
// end of :#include "FS_LESEN.SRC"
|
|||
|
// start of :#include "INITEXIT.SRC"
|
|||
|
//**********************************************************************
|
|||
|
//*
|
|||
|
//* INPA Library-Funktionen INITEXIT.SRC
|
|||
|
//*
|
|||
|
//* mindestens INPA 5.0.1
|
|||
|
//*
|
|||
|
//**********************************************************************
|
|||
|
//* Gall TI-430
|
|||
|
//**********************************************************************
|
|||
|
//* History:
|
|||
|
//* 04.07.2000 rd V0.03 Ersterstellung
|
|||
|
//* 25.04.2002 rd V1.00 Freigabe
|
|||
|
//* 24.09.2002 rd V1.01 Scriptinit verlagert
|
|||
|
//* 12.03.2003 iS V1.01 Anpassung SgbdInpaCheck()GroupCheck();
|
|||
|
//* 16.02.2004 rd V2.00 Umstellung auf 32-Bit Version
|
|||
|
//* 30.03.2006 GA V3.00 Erweiterung auf UDS (ISO 14229)
|
|||
|
//* GA V3.00 INPA.INI, [EXTRA], SRIPTS auslesen, ob "deleteread" gesetzt,
|
|||
|
//* GA V3.00 um nach FS- IS-, HS-L<>schen automatisch wieder zu lesen.
|
|||
|
//**********************************************************************
|
|||
|
|
|||
|
// **************************
|
|||
|
// *** inpainit, inpaexit ***
|
|||
|
// **************************
|
|||
|
inpainit()
|
|||
|
{
|
|||
|
bool rc;
|
|||
|
string temp;
|
|||
|
int i;
|
|||
|
|
|||
|
INPAapiInit();
|
|||
|
chrinit();
|
|||
|
|
|||
|
// Handle f<>r FS_LESEN
|
|||
|
StrArrayCreate(rc,f_ort_nr_buffer);
|
|||
|
if (rc == FALSE)
|
|||
|
{
|
|||
|
messagebox("Unerwarteter Fehler", // sollte nie kommen
|
|||
|
"StrArrayCreate(rc,f_ort_nr_buffer). "+CRLF+
|
|||
|
"Das Programm wird abgebrochen!");
|
|||
|
exit();
|
|||
|
}
|
|||
|
|
|||
|
StrArrayCreate(rc,f_ort_text_buffer);
|
|||
|
if (rc == FALSE)
|
|||
|
{
|
|||
|
messagebox("Unerwarteter Fehler", // sollte nie kommen
|
|||
|
"StrArrayCreate(rc,f_ort_text_buffer). "+CRLF+
|
|||
|
"Das Programm wird abgebrochen!");
|
|||
|
exit();
|
|||
|
}
|
|||
|
|
|||
|
SgbdInpaCheck();
|
|||
|
GroupCheck();
|
|||
|
setmenu(m_main);
|
|||
|
setscreen(s_main,TRUE);
|
|||
|
|
|||
|
//INPA.INI einlesen,
|
|||
|
//um nach FS- IS-, HS-L<>schen automatisch wieder zu lesen.
|
|||
|
//hinter "SCRIPTS" mu<6D> DeleteRead stehen, um die Funktion freizuschalten
|
|||
|
ExtraScript("DeleteRead", deleteread_flag);
|
|||
|
|
|||
|
//m FS,IS,HS zu speichern
|
|||
|
ExtraScript("SaveAs", fs_lesen_save_as_flag);
|
|||
|
is_lesen_save_as_flag=fs_lesen_save_as_flag;
|
|||
|
hs_lesen_save_as_flag=fs_lesen_save_as_flag;
|
|||
|
|
|||
|
//INPA.INI-Einstellung, falls Funktionen gew<65>nscht:
|
|||
|
//[EXTRA]
|
|||
|
//SCRIPTS = DeleteRead,SaveAs
|
|||
|
//Wichtig: Nach dem Komma kein Leerzeichen benutzen!
|
|||
|
|
|||
|
ScriptInit();
|
|||
|
}
|
|||
|
|
|||
|
inpaexit()
|
|||
|
{
|
|||
|
INPAapiEnd();
|
|||
|
|
|||
|
// Handle f<>r FS_LESEN
|
|||
|
StrArrayDestroy(f_ort_nr_buffer);
|
|||
|
StrArrayDestroy(f_ort_text_buffer);
|
|||
|
}
|
|||
|
|
|||
|
// -- EOF --
|
|||
|
// end of :#include "INITEXIT.SRC"
|
|||
|
|
|||
|
// **************************
|
|||
|
// *** Hauptmen<65> ***
|
|||
|
// **************************
|
|||
|
MENU m_main()
|
|||
|
{
|
|||
|
INIT {
|
|||
|
setmenutitle("Hauptmen<65>");
|
|||
|
|
|||
|
if ((ident_typ == 1)||(ident_typ == 2)) //DS2 oder BMW FAST
|
|||
|
{
|
|||
|
setitem(2, "Ident", TRUE);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
setitem(2, "SVK", TRUE);//ISO 14229
|
|||
|
}
|
|||
|
|
|||
|
if ((fs_lesen_flag == TRUE) ||
|
|||
|
(is_lesen_flag == TRUE) ||
|
|||
|
(hs_lesen_flag == TRUE))
|
|||
|
{
|
|||
|
setitem( 4 , "Fehler" , TRUE);
|
|||
|
}
|
|||
|
|
|||
|
if (m_status_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 5 , "Status" , TRUE);
|
|||
|
}
|
|||
|
|
|||
|
if (m_steuern_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 6 , "Steuern" , TRUE);
|
|||
|
}
|
|||
|
|
|||
|
if (speicher_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 7 , "Speicher" , TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM( 1 ,"Info") {
|
|||
|
userboxclose(1);
|
|||
|
setscreen(s_info,TRUE);
|
|||
|
}
|
|||
|
ITEM( 2 ,"Ident") {
|
|||
|
userboxclose(1);
|
|||
|
if (ident_typ == 1)
|
|||
|
setscreen(s_ident_ds2,TRUE);
|
|||
|
else if (ident_typ == 2)
|
|||
|
setscreen(s_ident,TRUE);
|
|||
|
else setscreen(s_svk_lesen,TRUE);
|
|||
|
}
|
|||
|
ITEM( 3 ,"") {
|
|||
|
userboxclose(1);
|
|||
|
setscreen(s_main,TRUE);
|
|||
|
}
|
|||
|
ITEM( 4 ,"") {
|
|||
|
userboxclose(1);
|
|||
|
if ((fs_lesen_flag == TRUE) ||
|
|||
|
(is_lesen_flag == TRUE) ||
|
|||
|
(hs_lesen_flag == TRUE))
|
|||
|
{
|
|||
|
setscreen( s_fehler ,TRUE);
|
|||
|
setmenu(m_fehler);
|
|||
|
}
|
|||
|
else
|
|||
|
setscreen( s_main ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 5 ,"") {
|
|||
|
userboxclose(1);
|
|||
|
if (m_status_flag == TRUE)
|
|||
|
{
|
|||
|
setscreen(s_status,TRUE);
|
|||
|
setmenu(m_status);
|
|||
|
}
|
|||
|
else
|
|||
|
setscreen( s_main ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 6 ,"") {
|
|||
|
userboxclose(1);
|
|||
|
if (m_steuern_flag == TRUE)
|
|||
|
{
|
|||
|
setscreen(s_steuern,TRUE);
|
|||
|
setmenu(m_steuern);
|
|||
|
}
|
|||
|
else
|
|||
|
setscreen( s_main ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 7 ,"") {
|
|||
|
userboxclose(1);
|
|||
|
if (speicher_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setscreen(s_speicher,TRUE);
|
|||
|
setmenu(m_speicher);
|
|||
|
}
|
|||
|
else
|
|||
|
setscreen( s_main ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 8 ,"Auswahl") {
|
|||
|
start();
|
|||
|
select(TRUE);
|
|||
|
}
|
|||
|
ITEM(18 ,"Gesamt") {
|
|||
|
start();
|
|||
|
deselect();
|
|||
|
}
|
|||
|
ITEM( 9 ,"Druck") {
|
|||
|
printscreen();
|
|||
|
}
|
|||
|
ITEM( 10 ,"Ende") {
|
|||
|
exit();
|
|||
|
}
|
|||
|
ITEM( 11, "KVP") {
|
|||
|
setscreen(s_info,TRUE);
|
|||
|
callwin( "kvp_edit "+titel+";"+version+";"+sgbd+": "+sgbd_ecu+";"+sgbd_revision);
|
|||
|
}
|
|||
|
ITEM( 12 ,"") {
|
|||
|
setscreen( s_main ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 13 ,"") {
|
|||
|
setscreen( s_main ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 14 ,"") {
|
|||
|
setscreen( s_main ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 15 ,"") {
|
|||
|
setscreen( s_main ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 16 ,"") {
|
|||
|
setscreen( s_main ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 17 ,"") {
|
|||
|
setscreen( s_main ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 19 ,"") {
|
|||
|
setscreen( s_main ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 20 ,"Exit") {
|
|||
|
exit();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// **************************
|
|||
|
// *** Fehlermen<65> ***
|
|||
|
// **************************
|
|||
|
MENU m_fehler()
|
|||
|
{
|
|||
|
int ErrorCode;
|
|||
|
int SpeicherUnterDateiNameLaenge=0;
|
|||
|
int ReturnedValue;
|
|||
|
string CurrentDirectory;
|
|||
|
string SpeichernKommentar1="";
|
|||
|
string SpeichernKommentar2="";
|
|||
|
string SpeicherUnterDateiName="";
|
|||
|
string DateiLesenZeile="";
|
|||
|
string DateiLesenPuffer="";
|
|||
|
bool DateiLesenEOF;
|
|||
|
string DateiName="";
|
|||
|
int aufrufIO;
|
|||
|
string JOB_STATUS;
|
|||
|
bool fehlerflag;
|
|||
|
|
|||
|
INIT {
|
|||
|
setmenutitle("Fehlerspeicher");
|
|||
|
if (fs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 1 , "FS lesen" , TRUE);
|
|||
|
setitem( 2 , "FS l<>schen" , TRUE);
|
|||
|
setitem( 9 , "FS drucken" , FALSE);
|
|||
|
if (fs_lesen_save_as_flag == TRUE) setitem(19 , "FS speichern", FALSE);
|
|||
|
}
|
|||
|
if (is_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 3 , "IS lesen" , TRUE);
|
|||
|
if (is_loeschen_flag == TRUE)
|
|||
|
setitem( 4 , "IS l<>schen" , TRUE);
|
|||
|
else setitem( 4 , "" , FALSE);//Nicht alle SGs haben IS_LOESCHEN. Z.B. EPS_90.PRG
|
|||
|
|
|||
|
setitem( 8 , "IS drucken" , FALSE);
|
|||
|
if (is_lesen_save_as_flag == TRUE) setitem(18 , "IS speichern", FALSE);
|
|||
|
}
|
|||
|
if (hs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 5 , "HS lesen" , TRUE);
|
|||
|
if (hs_loeschen_flag == TRUE)
|
|||
|
setitem( 6 , "HS l<>schen" , TRUE);
|
|||
|
else setitem( 6 , "" , FALSE);//Nicht alle SGs haben HS_LOESCHEN. Z.B. EPS_90.PRG
|
|||
|
|
|||
|
setitem( 7 , "HS drucken" , FALSE);
|
|||
|
if (hs_lesen_save_as_flag == TRUE) setitem(17 , "HS speichern", FALSE);
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM( 1 ,"") {
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
if (is_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 8 , "IS drucken" , FALSE);
|
|||
|
if (is_lesen_save_as_flag == TRUE) setitem(18 , "IS speichern", FALSE);
|
|||
|
}
|
|||
|
if (hs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 7 , "HS drucken" , FALSE);
|
|||
|
if (hs_lesen_save_as_flag == TRUE) setitem(17 , "HS speichern", FALSE);
|
|||
|
}
|
|||
|
if (fs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
userboxopen(0,8,35,5,50,"Fehlerspeicher lesen","");
|
|||
|
userboxftextout(0,"Der Fehlerspeicher wird gelesen! ... bitte warten",1,3,0,0);
|
|||
|
INPAapiFsMode_neu(0x7FF,"w","","",""); // alles Anzeigen
|
|||
|
INPAapiFsLesen_neu(sgbd,"na_fs.tmp");
|
|||
|
userboxclose(0);
|
|||
|
DateiName="na_fs.tmp";
|
|||
|
viewopen(DateiName,"Fehlerspeicher lesen");
|
|||
|
setitem( 9 , "FS drucken" , TRUE);
|
|||
|
if (fs_lesen_save_as_flag == TRUE) setitem(19 , "FS speichern", TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM( 2 ,"") {
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
if (fs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 9 , "FS drucken" , FALSE);
|
|||
|
if (fs_lesen_save_as_flag == TRUE) setitem(19 , "FS speichern", FALSE);
|
|||
|
}
|
|||
|
if (is_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 8 , "IS drucken" , FALSE);
|
|||
|
if (is_lesen_save_as_flag == TRUE) setitem(18 , "IS speichern", FALSE);
|
|||
|
}
|
|||
|
if (hs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 7 , "HS drucken" , FALSE);
|
|||
|
if (hs_lesen_save_as_flag == TRUE) setitem(17 , "HS speichern", FALSE);
|
|||
|
}
|
|||
|
if (fs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"FS_LOESCHEN","","");
|
|||
|
INP1apiResultText(fehlerflag,JOB_STATUS, "JOB_STATUS", 1, "");
|
|||
|
if (JOB_STATUS != "OKAY")
|
|||
|
{
|
|||
|
userboxopen(0,8,35,5,50,"Fehlerspeicher l<>schen","");
|
|||
|
userboxftextout(0,"Der Fehlerspeicher konnte nicht gel<65>scht werden!",1,3,0,0);
|
|||
|
userboxsetcolor(0,1,4);
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
userboxopen(0,8,35,5,50,"Fehlerspeicher l<>schen","");
|
|||
|
userboxftextout(0,"Der Fehlerspeicher wurde gel<65>scht!",1,3,0,0);
|
|||
|
|
|||
|
if (deleteread_flag == TRUE) // Aktivierung <20>ber INPA.INI, SCRIPTS = DeleteRead
|
|||
|
{
|
|||
|
delay(2000);
|
|||
|
userboxclose(0);
|
|||
|
userboxopen(0,8,35,5,50,"Fehlerspeicher lesen","");
|
|||
|
userboxftextout(0,"Der Fehlerspeicher wird gelesen! ... bitte warten",1,3,0,0);
|
|||
|
INPAapiFsMode_neu(0x7FF,"w","","",""); // alles Anzeigen
|
|||
|
INPAapiFsLesen_neu(sgbd,"na_fs.tmp");
|
|||
|
userboxclose(0);
|
|||
|
DateiName="na_fs.tmp";
|
|||
|
viewopen(DateiName,"Fehlerspeicher lesen");
|
|||
|
setitem( 9 , "FS drucken" , TRUE);
|
|||
|
if (fs_lesen_save_as_flag == TRUE) setitem(19 , "FS speichern", TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM( 3 ,"") {
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
if (fs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 9 , "FS drucken" , FALSE);
|
|||
|
if (fs_lesen_save_as_flag == TRUE) setitem(19 , "FS speichern", FALSE);
|
|||
|
}
|
|||
|
if (hs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 7 , "HS drucken" , FALSE);
|
|||
|
if (hs_lesen_save_as_flag == TRUE) setitem(17 , "HS speichern", FALSE);
|
|||
|
}
|
|||
|
if (is_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
userboxopen(0,8,35,5,50,"Infospeicher lesen","");
|
|||
|
userboxftextout(0,"Der Infospeicher wird gelesen! ... bitte warten",1,3,0,0);
|
|||
|
INPAapiFsMode_neu(0x7FF,"w","","","IS_LESEN"); // alles Anzeigen
|
|||
|
INPAapiFsLesen_neu(sgbd,"na_fs.tmp");
|
|||
|
userboxclose(0);
|
|||
|
DateiName="na_fs.tmp";
|
|||
|
viewopen(DateiName,"Infospeicher lesen");
|
|||
|
setitem( 8 , "IS drucken" , TRUE);
|
|||
|
if (is_lesen_save_as_flag == TRUE) setitem(18 , "IS speichern", TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM( 4 ,"") {
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
if (fs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 9 , "FS drucken" , FALSE);
|
|||
|
if (fs_lesen_save_as_flag == TRUE) setitem(19 , "FS speichern", FALSE);
|
|||
|
}
|
|||
|
if (is_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 8 , "IS drucken" , FALSE);
|
|||
|
if (is_lesen_save_as_flag == TRUE) setitem(18 , "IS speichern", FALSE);
|
|||
|
}
|
|||
|
if (hs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 7 , "HS drucken" , FALSE);
|
|||
|
if (hs_lesen_save_as_flag == TRUE) setitem(17 , "HS speichern", FALSE);
|
|||
|
}
|
|||
|
if (is_loeschen_flag == TRUE)
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"IS_LOESCHEN","","");
|
|||
|
INP1apiResultText(fehlerflag,JOB_STATUS, "JOB_STATUS", 1, "");
|
|||
|
if (JOB_STATUS != "OKAY")
|
|||
|
{
|
|||
|
userboxopen(0,8,35,5,50,"Infospeicher l<>schen","");
|
|||
|
userboxftextout(0,"Der Infospeicher konnte nicht gel<65>scht werden!",1,3,0,0);
|
|||
|
userboxsetcolor(0,1,4);
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
userboxopen(0,8,35,5,50,"Infospeicher l<>schen","");
|
|||
|
userboxftextout(0,"Der Infospeicher wurde gel<65>scht!",1,3,0,0);
|
|||
|
if (deleteread_flag == TRUE) // Aktivierung <20>ber INPA.INI, SCRIPT = deleteread
|
|||
|
{
|
|||
|
delay(2000);
|
|||
|
userboxclose(0);
|
|||
|
userboxopen(0,8,35,5,50,"Infospeicher lesen","");
|
|||
|
userboxftextout(0,"Der Infospeicher wird gelesen! ... bitte warten",1,3,0,0);
|
|||
|
INPAapiFsMode_neu(0x7FF,"w","","","IS_LESEN"); // alles Anzeigen
|
|||
|
INPAapiFsLesen_neu(sgbd,"na_fs.tmp");
|
|||
|
userboxclose(0);
|
|||
|
DateiName="na_fs.tmp";
|
|||
|
viewopen(DateiName,"Infospeicher lesen");
|
|||
|
setitem( 8 , "IS drucken" , TRUE);
|
|||
|
if (is_lesen_save_as_flag == TRUE) setitem(18 , "IS speichern", TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM( 5 ,"") {
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
if (fs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 9 , "FS drucken" , FALSE);
|
|||
|
if (fs_lesen_save_as_flag == TRUE) setitem(19 , "FS speichern", FALSE);
|
|||
|
}
|
|||
|
if (is_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 8 , "IS drucken" , FALSE);
|
|||
|
if (is_lesen_save_as_flag == TRUE) setitem(18 , "IS speichern", FALSE);
|
|||
|
}
|
|||
|
if (hs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
userboxopen(0,8,35,5,50,"Historienspeicher lesen","");
|
|||
|
userboxftextout(0,"Der Historienspeicher wird gelesen! ... bitte warten",1,3,0,0);
|
|||
|
INPAapiFsMode_neu(0x7FF,"w","","","HS_LESEN"); // alles Anzeigen
|
|||
|
INPAapiFsLesen_neu(sgbd,"na_fs.tmp");
|
|||
|
userboxclose(0);
|
|||
|
DateiName="na_fs.tmp";
|
|||
|
viewopen(DateiName,"Historienspeicher lesen");
|
|||
|
setitem( 7 , "HS drucken" , TRUE);
|
|||
|
if (hs_lesen_save_as_flag == TRUE) setitem(17 , "HS speichern", TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM( 6 ,"") {
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
if (fs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 9 , "FS drucken" , FALSE);
|
|||
|
if (fs_lesen_save_as_flag == TRUE) setitem(19 , "FS speichern", FALSE);
|
|||
|
}
|
|||
|
if (is_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 8 , "IS drucken" , FALSE);
|
|||
|
if (is_lesen_save_as_flag == TRUE) setitem(18 , "IS speichern", FALSE);
|
|||
|
}
|
|||
|
if (hs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 7 , "HS drucken" , FALSE);
|
|||
|
if (hs_lesen_save_as_flag == TRUE) setitem(17 , "HS speichern", FALSE);
|
|||
|
}
|
|||
|
if (hs_loeschen_flag == TRUE)
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"HS_LOESCHEN","","");
|
|||
|
INP1apiResultText(fehlerflag,JOB_STATUS, "JOB_STATUS", 1, "");
|
|||
|
if (JOB_STATUS != "OKAY")
|
|||
|
{
|
|||
|
userboxopen(0,8,35,5,50,"Historienspeicher l<>schen","");
|
|||
|
userboxftextout(0,"Der Historienspeicher konnte nicht gel<65>scht werden!",1,3,0,0);
|
|||
|
userboxsetcolor(0,1,4);
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
userboxopen(0,8,35,5,50,"Historienspeicher l<>schen","");
|
|||
|
userboxftextout(0,"Der Historienspeicher wurde gel<65>scht!",1,3,0,0);
|
|||
|
if (deleteread_flag == TRUE) // Aktivierung <20>ber INPA.INI, SCRIPT = deleteread
|
|||
|
{
|
|||
|
delay(2000);
|
|||
|
userboxclose(0);
|
|||
|
userboxopen(0,8,35,5,50,"Historienspeicher lesen","");
|
|||
|
userboxftextout(0,"Der Historienspeicher wird gelesen! ... bitte warten",1,3,0,0);
|
|||
|
INPAapiFsMode_neu(0x7FF,"w","","","HS_LESEN"); // alles Anzeigen
|
|||
|
INPAapiFsLesen_neu(sgbd,"na_fs.tmp");
|
|||
|
userboxclose(0);
|
|||
|
DateiName="na_fs.tmp";
|
|||
|
viewopen(DateiName,"Historienspeicher lesen");
|
|||
|
setitem( 7 , "HS drucken" , TRUE);
|
|||
|
if (hs_lesen_save_as_flag == TRUE) setitem(17 , "HS speichern", TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM( 7 ,"") {
|
|||
|
if (hs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
printfile(ErrorCode, DateiName, "", "",TRUE);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
if (fs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 9 , "FS drucken" , FALSE);
|
|||
|
if (fs_lesen_save_as_flag == TRUE) setitem(19 , "FS speichern", FALSE);
|
|||
|
}
|
|||
|
if (is_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 8 , "IS drucken" , FALSE);
|
|||
|
if (is_lesen_save_as_flag == TRUE) setitem(18 , "IS speichern", FALSE);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM( 8 ,"") {
|
|||
|
if (is_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
printfile(ErrorCode, DateiName, "", "",TRUE);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
if (fs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 9 , "FS drucken" , FALSE);
|
|||
|
if (fs_lesen_save_as_flag == TRUE) setitem(19 , "FS speichern", FALSE);
|
|||
|
}
|
|||
|
if (hs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 7 , "HS drucken" , FALSE);
|
|||
|
if (hs_lesen_save_as_flag == TRUE) setitem(17 , "HS speichern", FALSE);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM( 9 ,"") {
|
|||
|
if (fs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
printfile(ErrorCode, DateiName, "", "",TRUE);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
if (is_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 8 , "IS drucken" , FALSE);
|
|||
|
if (is_lesen_save_as_flag == TRUE) setitem(18 , "IS speichern", FALSE);
|
|||
|
}
|
|||
|
if (hs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 7 , "HS drucken" , FALSE);
|
|||
|
if (hs_lesen_save_as_flag == TRUE) setitem(17 , "HS speichern", FALSE);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM(17 ,"") {
|
|||
|
if ((hs_lesen_flag == TRUE) && (hs_lesen_save_as_flag == TRUE))
|
|||
|
{
|
|||
|
input2text(SpeichernKommentar1,SpeichernKommentar2,
|
|||
|
"Kommentar",
|
|||
|
"Geben Sie den zu speichernden Kommentar ein",
|
|||
|
"","");
|
|||
|
getinputstate(input_state);
|
|||
|
if (input_state==input_ok)
|
|||
|
{
|
|||
|
space(SpeicherUnterDateiName,256);
|
|||
|
strlen(SpeicherUnterDateiNameLaenge,SpeicherUnterDateiName);
|
|||
|
|
|||
|
GetCurrentDirectory(256,CurrentDirectory,ReturnedValue);
|
|||
|
SaveAsDialogBox("",SpeicherUnterDateiName,SpeicherUnterDateiNameLaenge,SpeicherUnterDateiNameLaenge);
|
|||
|
SetCurrentDirectory(CurrentDirectory,ReturnedValue);
|
|||
|
if (SpeicherUnterDateiNameLaenge > 0)
|
|||
|
{
|
|||
|
DateiLesenPuffer="";
|
|||
|
fileopen("na_fs.tmp","r");
|
|||
|
fileread(DateiLesenZeile, DateiLesenEOF );
|
|||
|
while (DateiLesenEOF == FALSE)
|
|||
|
{
|
|||
|
DateiLesenPuffer=DateiLesenPuffer+DateiLesenZeile;
|
|||
|
fileread(DateiLesenZeile, DateiLesenEOF );
|
|||
|
if (DateiLesenEOF == FALSE) DateiLesenPuffer=DateiLesenPuffer+LF;
|
|||
|
}
|
|||
|
fileclose();
|
|||
|
|
|||
|
DateiName=SpeicherUnterDateiName;
|
|||
|
fileopen(DateiName,"w");
|
|||
|
if (SpeichernKommentar1 + SpeichernKommentar2 != "")
|
|||
|
{
|
|||
|
filewrite( " K O M M E N T A R");
|
|||
|
filewrite( " -----------------");
|
|||
|
filewrite( "");
|
|||
|
if (SpeichernKommentar1 != "") filewrite(SpeichernKommentar1);
|
|||
|
if (SpeichernKommentar2 != "") filewrite(SpeichernKommentar2);
|
|||
|
filewrite( "-------------------------------------------------------------");
|
|||
|
filewrite("");
|
|||
|
}
|
|||
|
filewrite(DateiLesenPuffer);
|
|||
|
fileclose();
|
|||
|
|
|||
|
viewclose();
|
|||
|
viewopen(DateiName,"Historienspeicher speichern: "+DateiName);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
if (fs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 9 , "FS drucken" , FALSE);
|
|||
|
if (fs_lesen_save_as_flag == TRUE) setitem(19 , "FS speichern", FALSE);
|
|||
|
}
|
|||
|
if (is_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 8 , "IS drucken" , FALSE);
|
|||
|
if (is_lesen_save_as_flag == TRUE) setitem(18 , "IS speichern", FALSE);
|
|||
|
}
|
|||
|
if (hs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 7 , "HS drucken" , FALSE);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM(18 ,"") {
|
|||
|
if ((is_lesen_flag == TRUE) && (is_lesen_save_as_flag == TRUE))
|
|||
|
{
|
|||
|
input2text(SpeichernKommentar1,SpeichernKommentar2,
|
|||
|
"Kommentar",
|
|||
|
"Geben Sie den zu speichernden Kommentar ein",
|
|||
|
"","");
|
|||
|
getinputstate(input_state);
|
|||
|
if (input_state==input_ok)
|
|||
|
{
|
|||
|
space(SpeicherUnterDateiName,256);
|
|||
|
strlen(SpeicherUnterDateiNameLaenge,SpeicherUnterDateiName);
|
|||
|
|
|||
|
GetCurrentDirectory(256,CurrentDirectory,ReturnedValue);
|
|||
|
SaveAsDialogBox("",SpeicherUnterDateiName,SpeicherUnterDateiNameLaenge,SpeicherUnterDateiNameLaenge);
|
|||
|
SetCurrentDirectory(CurrentDirectory,ReturnedValue);
|
|||
|
if (SpeicherUnterDateiNameLaenge > 0)
|
|||
|
{
|
|||
|
DateiLesenPuffer="";
|
|||
|
fileopen("na_fs.tmp","r");
|
|||
|
fileread(DateiLesenZeile, DateiLesenEOF );
|
|||
|
while (DateiLesenEOF == FALSE)
|
|||
|
{
|
|||
|
DateiLesenPuffer=DateiLesenPuffer+DateiLesenZeile;
|
|||
|
fileread(DateiLesenZeile, DateiLesenEOF );
|
|||
|
if (DateiLesenEOF == FALSE) DateiLesenPuffer=DateiLesenPuffer+LF;
|
|||
|
}
|
|||
|
fileclose();
|
|||
|
|
|||
|
DateiName=SpeicherUnterDateiName;
|
|||
|
fileopen(DateiName,"w");
|
|||
|
if (SpeichernKommentar1 + SpeichernKommentar2 != "")
|
|||
|
{
|
|||
|
filewrite( " K O M M E N T A R");
|
|||
|
filewrite( " -----------------");
|
|||
|
filewrite( "");
|
|||
|
if (SpeichernKommentar1 != "") filewrite(SpeichernKommentar1);
|
|||
|
if (SpeichernKommentar2 != "") filewrite(SpeichernKommentar2);
|
|||
|
filewrite( "-------------------------------------------------------------");
|
|||
|
filewrite("");
|
|||
|
}
|
|||
|
filewrite(DateiLesenPuffer);
|
|||
|
fileclose();
|
|||
|
|
|||
|
viewclose();
|
|||
|
viewopen(DateiName,"Infospeicher speichern: "+DateiName);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
if (fs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 9 , "FS drucken" , FALSE);
|
|||
|
if (fs_lesen_save_as_flag == TRUE) setitem(19 , "FS speichern", FALSE);
|
|||
|
}
|
|||
|
if (is_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 8 , "IS drucken" , FALSE);
|
|||
|
}
|
|||
|
if (hs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 7 , "HS drucken" , FALSE);
|
|||
|
if (hs_lesen_save_as_flag == TRUE) setitem(17 , "HS speichern", FALSE);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM(19 ,"") {
|
|||
|
if ((fs_lesen_flag == TRUE) && (fs_lesen_save_as_flag == TRUE))
|
|||
|
{
|
|||
|
input2text(SpeichernKommentar1,SpeichernKommentar2,
|
|||
|
"Kommentar",
|
|||
|
"Geben Sie den zu speichernden Kommentar ein",
|
|||
|
"","");
|
|||
|
getinputstate(input_state);
|
|||
|
if (input_state==input_ok)
|
|||
|
{
|
|||
|
space(SpeicherUnterDateiName,256);
|
|||
|
strlen(SpeicherUnterDateiNameLaenge,SpeicherUnterDateiName);
|
|||
|
|
|||
|
GetCurrentDirectory(256,CurrentDirectory,ReturnedValue);
|
|||
|
SaveAsDialogBox("",SpeicherUnterDateiName,SpeicherUnterDateiNameLaenge,SpeicherUnterDateiNameLaenge);
|
|||
|
SetCurrentDirectory(CurrentDirectory,ReturnedValue);
|
|||
|
if (SpeicherUnterDateiNameLaenge > 0)
|
|||
|
{
|
|||
|
DateiLesenPuffer="";
|
|||
|
fileopen("na_fs.tmp","r");
|
|||
|
fileread(DateiLesenZeile, DateiLesenEOF );
|
|||
|
while (DateiLesenEOF == FALSE)
|
|||
|
{
|
|||
|
DateiLesenPuffer=DateiLesenPuffer+DateiLesenZeile;
|
|||
|
fileread(DateiLesenZeile, DateiLesenEOF );
|
|||
|
if (DateiLesenEOF == FALSE) DateiLesenPuffer=DateiLesenPuffer+LF;
|
|||
|
}
|
|||
|
fileclose();
|
|||
|
|
|||
|
DateiName=SpeicherUnterDateiName;
|
|||
|
fileopen(DateiName,"w");
|
|||
|
if (SpeichernKommentar1 + SpeichernKommentar2 != "")
|
|||
|
{
|
|||
|
filewrite( " K O M M E N T A R");
|
|||
|
filewrite( " -----------------");
|
|||
|
filewrite( "");
|
|||
|
if (SpeichernKommentar1 != "") filewrite(SpeichernKommentar1);
|
|||
|
if (SpeichernKommentar2 != "") filewrite(SpeichernKommentar2);
|
|||
|
filewrite( "-------------------------------------------------------------");
|
|||
|
filewrite("");
|
|||
|
}
|
|||
|
filewrite(DateiLesenPuffer);
|
|||
|
fileclose();
|
|||
|
|
|||
|
viewclose();
|
|||
|
viewopen(DateiName,"Fehlerspeicher speichern: "+DateiName);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
if (fs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 9 , "FS drucken" , FALSE);
|
|||
|
}
|
|||
|
if (is_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 8 , "IS drucken" , FALSE);
|
|||
|
if (is_lesen_save_as_flag == TRUE) setitem(18 , "IS speichern", FALSE);
|
|||
|
}
|
|||
|
if (hs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
setitem( 7 , "HS drucken" , FALSE);
|
|||
|
if (hs_lesen_save_as_flag == TRUE) setitem(17 , "HS speichern", FALSE);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM( 10 ,"Zur<75>ck") {
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
setscreen( s_main ,TRUE);
|
|||
|
setmenu( m_main );
|
|||
|
}
|
|||
|
ITEM( 20 ,"Exit") {
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
exit();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// **************************
|
|||
|
// *** Speichermen<65> ***
|
|||
|
// **************************
|
|||
|
MENU m_speicher()
|
|||
|
{
|
|||
|
int input_ok=0;
|
|||
|
int input_state;
|
|||
|
string text_var;
|
|||
|
|
|||
|
INIT {
|
|||
|
setmenutitle("Speicher lesen");
|
|||
|
if (speicher_lesen_lar_flag==TRUE) setitem( 1 , "LAR" , TRUE);
|
|||
|
if (speicher_lesen_flash_flag==TRUE) setitem( 2 , "FLASH", TRUE);
|
|||
|
if (speicher_lesen_uifm_flag==TRUE) setitem( 3 , "UIFM" , TRUE);
|
|||
|
if (speicher_lesen_romi_flag==TRUE) setitem( 4 , "ROMI" , TRUE);
|
|||
|
if (speicher_lesen_ramis_flag==TRUE) setitem( 5 , "RAMIS", TRUE);
|
|||
|
if (speicher_lesen_ramil_flag==TRUE) setitem( 6 , "RAMIL", TRUE);
|
|||
|
if (speicher_lesen_nvram_flag==TRUE) setitem( 7 , "NVRAM", TRUE);
|
|||
|
if (speicher_lesen_romx_flag==TRUE) setitem(14 , "ROMX" , TRUE);
|
|||
|
if (speicher_lesen_ramxx_flag==TRUE) setitem(15 , "RAMXX", TRUE);
|
|||
|
}
|
|||
|
ITEM( 1 ,"") {
|
|||
|
if (speicher_lesen_lar_flag==TRUE)
|
|||
|
{
|
|||
|
input2hexnum(speicher_lesen_adresse,speicher_lesen_anzahl,"LAR lesen",
|
|||
|
"Es ist darauf zu achten, "+
|
|||
|
"da<64> die angegebene Adresse + Anzahl "+
|
|||
|
"der zu lesenden Bytes die Obergrenze "+
|
|||
|
"(FFFFFF) nicht <20>berschreitet.",
|
|||
|
"Adresse 000000-FFFFFF","Anzahl der Bytes 1-200","000000","FFFFFF",1,200);
|
|||
|
getinputstate(input_state);
|
|||
|
if (input_state==input_ok)
|
|||
|
{
|
|||
|
speicher_lesen_text="LAR lesen";
|
|||
|
speicher_lesen_seg_adr_anz="LAR;"+speicher_lesen_adresse;
|
|||
|
inttostring(speicher_lesen_anzahl,text_var);
|
|||
|
speicher_lesen_seg_adr_anz=speicher_lesen_seg_adr_anz+";"+text_var;
|
|||
|
setscreen(s_speicher_ausgabe,TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
setscreen(s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 2 ,"") {
|
|||
|
if (speicher_lesen_flash_flag==TRUE)
|
|||
|
{
|
|||
|
input2hexnum(speicher_lesen_adresse,speicher_lesen_anzahl,"FLASH lesen",
|
|||
|
"Es ist darauf zu achten, "+
|
|||
|
"da<64> die angegebene Adresse + Anzahl "+
|
|||
|
"der zu lesenden Bytes die Obergrenze "+
|
|||
|
"(FFFFFF) nicht <20>berschreitet.",
|
|||
|
"Adresse 000000-FFFFFF","Anzahl der Bytes 1-200","000000","FFFFFF",1,200);
|
|||
|
getinputstate(input_state);
|
|||
|
if (input_state==input_ok)
|
|||
|
{
|
|||
|
speicher_lesen_text="FLASH lesen";
|
|||
|
speicher_lesen_seg_adr_anz="FLASH;"+speicher_lesen_adresse;
|
|||
|
inttostring(speicher_lesen_anzahl,text_var);
|
|||
|
speicher_lesen_seg_adr_anz=speicher_lesen_seg_adr_anz+";"+text_var;
|
|||
|
setscreen(s_speicher_ausgabe,TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
setscreen(s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 3 ,"") {
|
|||
|
if (speicher_lesen_uifm_flag==TRUE)
|
|||
|
{
|
|||
|
input2hexnum(speicher_lesen_adresse,speicher_lesen_anzahl,"UIFM lesen",
|
|||
|
"Es ist darauf zu achten, "+
|
|||
|
"da<64> die angegebene Adresse + Anzahl "+
|
|||
|
"der zu lesenden Bytes die Obergrenze "+
|
|||
|
"(FFFFFF) nicht <20>berschreitet.",
|
|||
|
"Adresse 000000-FFFFFF","Anzahl der Bytes 1-200","000000","FFFFFF",1,200);
|
|||
|
getinputstate(input_state);
|
|||
|
if (input_state==input_ok)
|
|||
|
{
|
|||
|
speicher_lesen_text="UIFM lesen";
|
|||
|
speicher_lesen_seg_adr_anz="UIFM;"+speicher_lesen_adresse;
|
|||
|
inttostring(speicher_lesen_anzahl,text_var);
|
|||
|
speicher_lesen_seg_adr_anz=speicher_lesen_seg_adr_anz+";"+text_var;
|
|||
|
setscreen(s_speicher_ausgabe,TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
setscreen(s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 4 ,"") {
|
|||
|
if (speicher_lesen_romi_flag==TRUE)
|
|||
|
{
|
|||
|
input2hexnum(speicher_lesen_adresse,speicher_lesen_anzahl,"ROMI lesen",
|
|||
|
"Es ist darauf zu achten, "+
|
|||
|
"da<64> die angegebene Adresse + Anzahl "+
|
|||
|
"der zu lesenden Bytes die Obergrenze "+
|
|||
|
"(FFFFFF) nicht <20>berschreitet.",
|
|||
|
"Adresse 000000-FFFFFF","Anzahl der Bytes 1-200","000000","FFFFFF",1,200);
|
|||
|
getinputstate(input_state);
|
|||
|
if (input_state==input_ok)
|
|||
|
{
|
|||
|
speicher_lesen_text="ROMI lesen";
|
|||
|
speicher_lesen_seg_adr_anz="ROMI;"+speicher_lesen_adresse;
|
|||
|
inttostring(speicher_lesen_anzahl,text_var);
|
|||
|
speicher_lesen_seg_adr_anz=speicher_lesen_seg_adr_anz+";"+text_var;
|
|||
|
setscreen(s_speicher_ausgabe,TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
setscreen(s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 5 ,"") {
|
|||
|
if (speicher_lesen_ramis_flag==TRUE)
|
|||
|
{
|
|||
|
input2hexnum(speicher_lesen_adresse,speicher_lesen_anzahl,"RAMIS lesen",
|
|||
|
"Es ist darauf zu achten, "+
|
|||
|
"da<64> die angegebene Adresse + Anzahl "+
|
|||
|
"der zu lesenden Bytes die Obergrenze "+
|
|||
|
"(FFFFFF) nicht <20>berschreitet.",
|
|||
|
"Adresse 000000-FFFFFF","Anzahl der Bytes 1-200","000000","FFFFFF",1,200);
|
|||
|
getinputstate(input_state);
|
|||
|
if (input_state==input_ok)
|
|||
|
{
|
|||
|
speicher_lesen_text="RAMIS lesen";
|
|||
|
speicher_lesen_seg_adr_anz="RAMIS;"+speicher_lesen_adresse;
|
|||
|
inttostring(speicher_lesen_anzahl,text_var);
|
|||
|
speicher_lesen_seg_adr_anz=speicher_lesen_seg_adr_anz+";"+text_var;
|
|||
|
setscreen(s_speicher_ausgabe,TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
setscreen(s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 6 ,"") {
|
|||
|
if (speicher_lesen_ramil_flag==TRUE)
|
|||
|
{
|
|||
|
input2hexnum(speicher_lesen_adresse,speicher_lesen_anzahl,"RAMIL lesen",
|
|||
|
"Es ist darauf zu achten, "+
|
|||
|
"da<64> die angegebene Adresse + Anzahl "+
|
|||
|
"der zu lesenden Bytes die Obergrenze "+
|
|||
|
"(FFFFFF) nicht <20>berschreitet.",
|
|||
|
"Adresse 000000-FFFFFF","Anzahl der Bytes 1-200","000000","FFFFFF",1,200);
|
|||
|
getinputstate(input_state);
|
|||
|
if (input_state==input_ok)
|
|||
|
{
|
|||
|
speicher_lesen_text="RAMIL lesen";
|
|||
|
speicher_lesen_seg_adr_anz="RAMIL;"+speicher_lesen_adresse;
|
|||
|
inttostring(speicher_lesen_anzahl,text_var);
|
|||
|
speicher_lesen_seg_adr_anz=speicher_lesen_seg_adr_anz+";"+text_var;
|
|||
|
setscreen(s_speicher_ausgabe,TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
setscreen(s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 7 ,"") {
|
|||
|
if (speicher_lesen_nvram_flag==TRUE)
|
|||
|
{
|
|||
|
input2hexnum(speicher_lesen_adresse,speicher_lesen_anzahl,"NVRAM lesen",
|
|||
|
"Es ist darauf zu achten, "+
|
|||
|
"da<64> die angegebene Adresse + Anzahl "+
|
|||
|
"der zu lesenden Bytes die Obergrenze "+
|
|||
|
"(FFFFFF) nicht <20>berschreitet.",
|
|||
|
"Adresse 000000-FFFFFF","Anzahl der Bytes 1-200","000000","FFFFFF",1,200);
|
|||
|
getinputstate(input_state);
|
|||
|
if (input_state==input_ok)
|
|||
|
{
|
|||
|
speicher_lesen_text="NVRAM lesen";
|
|||
|
speicher_lesen_seg_adr_anz="NVRAM;"+speicher_lesen_adresse;
|
|||
|
inttostring(speicher_lesen_anzahl,text_var);
|
|||
|
speicher_lesen_seg_adr_anz=speicher_lesen_seg_adr_anz+";"+text_var;
|
|||
|
setscreen(s_speicher_ausgabe,TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
setscreen(s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 8 ,"") {
|
|||
|
setscreen( s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 9 ,"Druck") {
|
|||
|
printscreen();
|
|||
|
}
|
|||
|
ITEM( 10 ,"Zur<75>ck") {
|
|||
|
setscreen( s_main ,TRUE);
|
|||
|
setmenu( m_main );
|
|||
|
}
|
|||
|
ITEM( 11 ,"") {
|
|||
|
setscreen( s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 12 ,"") {
|
|||
|
setscreen( s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 13 ,"") {
|
|||
|
setscreen( s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 14 ,"") {
|
|||
|
if (speicher_lesen_romx_flag==TRUE)
|
|||
|
{
|
|||
|
input2hexnum(speicher_lesen_adresse,speicher_lesen_anzahl,"ROMX lesen",
|
|||
|
"Es ist darauf zu achten, "+
|
|||
|
"da<64> die angegebene Adresse + Anzahl "+
|
|||
|
"der zu lesenden Bytes die Obergrenze "+
|
|||
|
"(FFFFFF) nicht <20>berschreitet.",
|
|||
|
"Adresse 000000-FFFFFF","Anzahl der Bytes 1-200","000000","FFFFFF",1,200);
|
|||
|
getinputstate(input_state);
|
|||
|
if (input_state==input_ok)
|
|||
|
{
|
|||
|
speicher_lesen_text="ROMX lesen";
|
|||
|
speicher_lesen_seg_adr_anz="ROMX;"+speicher_lesen_adresse;
|
|||
|
inttostring(speicher_lesen_anzahl,text_var);
|
|||
|
speicher_lesen_seg_adr_anz=speicher_lesen_seg_adr_anz+";"+text_var;
|
|||
|
setscreen(s_speicher_ausgabe,TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
setscreen(s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 15 ,"") {
|
|||
|
if (speicher_lesen_ramxx_flag==TRUE)
|
|||
|
{
|
|||
|
input2hexnum(speicher_lesen_adresse,speicher_lesen_anzahl,"RAMXX lesen",
|
|||
|
"Es ist darauf zu achten, "+
|
|||
|
"da<64> die angegebene Adresse + Anzahl "+
|
|||
|
"der zu lesenden Bytes die Obergrenze "+
|
|||
|
"(FFFFFF) nicht <20>berschreitet.",
|
|||
|
"Adresse 000000-FFFFFF","Anzahl der Bytes 1-200","000000","FFFFFF",1,200);
|
|||
|
getinputstate(input_state);
|
|||
|
if (input_state==input_ok)
|
|||
|
{
|
|||
|
speicher_lesen_text="RAMXX lesen";
|
|||
|
speicher_lesen_seg_adr_anz="RAMXX;"+speicher_lesen_adresse;
|
|||
|
inttostring(speicher_lesen_anzahl,text_var);
|
|||
|
speicher_lesen_seg_adr_anz=speicher_lesen_seg_adr_anz+";"+text_var;
|
|||
|
setscreen(s_speicher_ausgabe,TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
setscreen(s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 16 ,"") {
|
|||
|
setscreen( s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 17 ,"") {
|
|||
|
setscreen( s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 18 ,"") {
|
|||
|
setscreen( s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 19 ,"") {
|
|||
|
setscreen( s_speicher,TRUE);
|
|||
|
}
|
|||
|
ITEM( 20 ,"Exit") {
|
|||
|
exit();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// **************************
|
|||
|
// *** Hauptscreen ***
|
|||
|
// **************************
|
|||
|
SCREEN s_main()
|
|||
|
{
|
|||
|
string text_var;
|
|||
|
|
|||
|
userboxclose(0);
|
|||
|
ftextout("Hauptmen<65>",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
|
|||
|
if (simulation_flag == TRUE)
|
|||
|
{
|
|||
|
userboxopen(1,14,30,5,48,"Hinweis","");
|
|||
|
userboxftextout(1,"INPA bzw. EDIABAS l<>uft im Simulationsmodus!",1,3,0,24);
|
|||
|
userboxsetcolor(1,0,4);
|
|||
|
}
|
|||
|
|
|||
|
if (ident_typ != 3)
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"IDENT","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
}
|
|||
|
|
|||
|
LINE("","")
|
|||
|
{
|
|||
|
if (ident_typ != 3)//Nur bei DS2 und BMW Fast vorhanden
|
|||
|
{
|
|||
|
ftextout("BMW Teilenummer",1,0,0,0);
|
|||
|
ftextout(":",1,19,0,0);
|
|||
|
INPAapiResultText(text_var,"ID_BMW_NR",1,"");
|
|||
|
ftextout(text_var,1,20,0,1);
|
|||
|
|
|||
|
ftextout("Herstelldatum",1,43,0,0);
|
|||
|
ftextout(":",1,59,0,0);
|
|||
|
if (ident_typ == 1)//DS2
|
|||
|
{
|
|||
|
ftextout("KW / Jahr",1,68,0,0);
|
|||
|
ftextout("/",1,63,0,1);
|
|||
|
INPAapiResultText(text_var,"ID_DATUM_KW",1,"");
|
|||
|
ftextout(text_var,1,60,0,1);
|
|||
|
INPAapiResultText(text_var,"ID_DATUM_JAHR",1,"");
|
|||
|
ftextout(text_var,1,65,0,1);
|
|||
|
}
|
|||
|
else if (ident_typ == 2)//BMW FAST
|
|||
|
{
|
|||
|
INPAapiResultText(text_var,"ID_DATUM",1,"");
|
|||
|
ftextout(text_var,1,60,0,1);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
ftextout("< F1 > Information" , 4,5,0,1);
|
|||
|
|
|||
|
if ((ident_typ == 1)||(ident_typ == 2)) //DS2 oder BMW FAST
|
|||
|
{
|
|||
|
ftextout("< F2 > Identifikation" , 6,5,0,1);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
ftextout("< F2 > Steuerger<65>teverbaukennung" , 6,5,0,1);//UDS (ISO 14229)
|
|||
|
}
|
|||
|
|
|||
|
if ((fs_lesen_flag == TRUE) ||
|
|||
|
(is_lesen_flag == TRUE) ||
|
|||
|
(hs_lesen_flag == TRUE))
|
|||
|
ftextout("< F4 > Fehlerspeicher" ,10,5,0,1);
|
|||
|
|
|||
|
if (m_status_flag == TRUE)
|
|||
|
ftextout("< F5 > Status lesen" ,12,5,0,1);
|
|||
|
|
|||
|
if (m_steuern_flag == TRUE)
|
|||
|
ftextout("< F6 > Ansteuern" ,14,5,0,1);
|
|||
|
|
|||
|
if (speicher_lesen_flag == TRUE)
|
|||
|
ftextout("< F7 > Speicher lesen" ,16,5,0,1);
|
|||
|
|
|||
|
ftextout("< F8 > Auswahl" ,18,5,0,1);
|
|||
|
ftextout("< F9 > Bildschirmdruck" ,20,5,0,1);
|
|||
|
ftextout("< F10> Ende" ,22,5,0,1);
|
|||
|
|
|||
|
ftextout("<Shift> + < F1 > KVP-Editor" , 4,45,0,1);
|
|||
|
ftextout("<Shift> + < F8 > Gesamt" ,18,45,0,1);
|
|||
|
ftextout("<Shift> + < F10> Exit" ,22,45,0,1);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// **************************
|
|||
|
// *** Infoscreen ***
|
|||
|
// **************************
|
|||
|
SCREEN s_info ()
|
|||
|
{
|
|||
|
int i;
|
|||
|
int slen;
|
|||
|
int pos;
|
|||
|
int pos2;
|
|||
|
int anzahl;
|
|||
|
string temp;
|
|||
|
|
|||
|
ftextout("Information",1,0,1,0);
|
|||
|
ftextout("Nacharbeitsprogramm",4,0,0,0); ftextout(":", 4,33,0,1); ftextout(titel,4,35,0,1);
|
|||
|
ftextout("Version",5,1,0,0); ftextout(":", 5,33,0,1); ftextout(version,5,35,0,1);
|
|||
|
ftextout("Package",6,1,0,0); ftextout(":", 6,33,0,1); ftextout(package,6,35,0,1);
|
|||
|
ftextout("Verantwortung",7,1,0,0); ftextout(":", 7,33,0,1); ftextout(origin,7,35,0,1);
|
|||
|
|
|||
|
ftextout("Gruppendatei",10,0,0,0); ftextout(":",10,33,0,1); ftextout(gruppe,10,35,0,1);
|
|||
|
ftextout("Bezeichnung",11,1,0,0); ftextout(":",11,33,0,1); ftextout(gruppe_ecu,11,35,0,1);
|
|||
|
ftextout("Version",12,1,0,0); ftextout(":",12,33,0,1); ftextout(gruppe_revision,12,35,0,1);
|
|||
|
ftextout("Verantwortung",13,1,0,0); ftextout(":",13,33,0,1); ftextout(gruppe_origin,13,35,0,1);
|
|||
|
ftextout("Identifizierbare SGBD'en",14,1,0,0);
|
|||
|
|
|||
|
strlen(slen, gruppe_comment);
|
|||
|
anzahl=44;
|
|||
|
pos=0;
|
|||
|
if ( slen <= anzahl )
|
|||
|
{
|
|||
|
ftextout(":",14,33,0,1); ftextout(gruppe_comment,14,35,0,1);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
instr(pos2, anzahl, gruppe_comment, ",");
|
|||
|
if (pos2 > 0) anzahl=pos2+1;
|
|||
|
midstr(temp, gruppe_comment, pos, anzahl); ftextout(":",14,33,0,1); ftextout(temp,14,35,0,1);
|
|||
|
i=14;
|
|||
|
pos=pos+anzahl;
|
|||
|
while ( pos < slen )
|
|||
|
{
|
|||
|
i=i+1;
|
|||
|
anzahl=75;
|
|||
|
instr(pos2, pos + anzahl, gruppe_comment, ",");
|
|||
|
if (pos2 > 0) anzahl=pos2+1-pos;
|
|||
|
midstr(temp, gruppe_comment, pos, anzahl); ftextout(temp,i,1,0,1);
|
|||
|
pos=pos+anzahl;
|
|||
|
if ( i >= 18 )
|
|||
|
{
|
|||
|
if ( pos < slen ) ftextout(temp+" . . .",i,1,0,1);
|
|||
|
pos=slen;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
ftextout("Steuerger<65>tebeschreibungsdatei",21,0,0,0); ftextout(":",21,33,0,1); ftextout(sgbd,21,35,0,1);
|
|||
|
ftextout("Steuerger<65>t",22,1,0,0); ftextout(":",22,33,0,1); ftextout(sgbd_ecu,22,35,0,1);
|
|||
|
ftextout("Version",23,1,0,0); ftextout(":",23,33,0,1); ftextout(sgbd_revision,23,35,0,1);
|
|||
|
ftextout("Package",24,1,0,0); ftextout(":",24,33,0,1); ftextout(sgbd_package,24,35,0,1);
|
|||
|
ftextout("Verantwortung",25,1,0,0); ftextout(":",25,33,0,1); ftextout(sgbd_origin,25,35,0,1);
|
|||
|
ftextout("Sprache",26,1,0,0); ftextout(":",26,33,0,1); ftextout(sgbd_sprache,26,35,0,1);
|
|||
|
if (sgbd_comment!="")
|
|||
|
{
|
|||
|
ftextout("Kommentar",27,1,0,0);
|
|||
|
ftextout(":",27,33,0,1);
|
|||
|
ftextout(sgbd_comment,27,35,0,1);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// **************************
|
|||
|
// *** Identscreen DS2 ***
|
|||
|
// **************************
|
|||
|
SCREEN s_ident_ds2()
|
|||
|
{
|
|||
|
ftextout("Identifikation",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
INPAapiJob(sgbd,"IDENT","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
LINE("","")
|
|||
|
{
|
|||
|
ftextout("BMW Teilenummer",1,0,1,0);
|
|||
|
ftextout(":",1,33,1,0);
|
|||
|
INPAapiResultText(text_var,"ID_BMW_NR",1,"");
|
|||
|
ftextout(text_var,1,35,1,1);
|
|||
|
|
|||
|
ftextout("Hardwarenummer",4,0,1,0);
|
|||
|
ftextout(":",4,33,1,0);
|
|||
|
INPAapiResultText(text_var,"ID_HW_NR",1,"");
|
|||
|
ftextout(text_var,4,35,1,1);
|
|||
|
|
|||
|
ftextout("Softwarenummer",7,0,1,0);
|
|||
|
ftextout(":",7,33,1,0);
|
|||
|
INPAapiResultText(text_var,"ID_SW_NR",1,"");
|
|||
|
ftextout(text_var,7,35,1,1);
|
|||
|
|
|||
|
ftextout("Lieferant",10,0,1,0);
|
|||
|
ftextout(":",10,33,1,0);
|
|||
|
INPAapiResultText(text_var,"ID_LIEF_TEXT",1,"");
|
|||
|
ftextout(text_var,10,35,1,1);
|
|||
|
|
|||
|
ftextout("Codier-Index",13,0,1,0);
|
|||
|
ftextout(":",13,33,1,0);
|
|||
|
INPAapiResultText(text_var,"ID_COD_INDEX",1,"");
|
|||
|
ftextout(text_var,13,35,1,1);
|
|||
|
|
|||
|
ftextout("Diagnose-Index",16,0,1,0);
|
|||
|
ftextout(":",16,33,1,0);
|
|||
|
INPAapiResultText(text_var,"ID_DIAG_INDEX",1,"");
|
|||
|
ftextout(text_var,16,35,1,1);
|
|||
|
|
|||
|
ftextout("Bus-Index",19,0,1,0);
|
|||
|
ftextout(":",19,33,1,0);
|
|||
|
INPAapiResultText(text_var,"ID_BUS_INDEX",1,"");
|
|||
|
ftextout(text_var,19,35,1,1);
|
|||
|
|
|||
|
ftextout("Herstelldatum",22,0,1,0);
|
|||
|
ftextout(":",22,33,1,0);
|
|||
|
ftextout("KW / Jahr",22,55,1,0);
|
|||
|
ftextout("/",22,41,1,1);
|
|||
|
INPAapiResultText(text_var,"ID_DATUM_KW",1,"");
|
|||
|
ftextout(text_var,22,35,1,1);
|
|||
|
INPAapiResultText(text_var,"ID_DATUM_JAHR",1,"");
|
|||
|
ftextout(text_var,22,45,1,1);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// ****************************
|
|||
|
// *** Identscreen BMW Fast ***
|
|||
|
// ****************************
|
|||
|
SCREEN s_ident()
|
|||
|
{
|
|||
|
string text_var;
|
|||
|
int ganz_zahl;
|
|||
|
string job_status="???"; // f<>r Job_Statuskontrolle
|
|||
|
bool fehlerflag; // Fehlerflag
|
|||
|
int errorcode; // EDIABAS Fehlernummer
|
|||
|
string errorcode_text; // EDIABAS Fehlernummer
|
|||
|
string error_text; // EDIABAS Fehlertext
|
|||
|
|
|||
|
ftextout("Identifikation",1,0,1,0);
|
|||
|
ftextout("",3,0,0,1);
|
|||
|
|
|||
|
LINE("Identifikation","")
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"IDENT","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
|
|||
|
ftextout("BMW Teilenummer",1,0,0,0);
|
|||
|
ftextout(":",1,43,0,0);
|
|||
|
INPAapiResultText(text_var,"ID_BMW_NR",1,"");
|
|||
|
ftextout(text_var,1,45,0,1);
|
|||
|
|
|||
|
ftextout("Codier-Index",3,0,0,0);
|
|||
|
ftextout(":",3,43,0,0);
|
|||
|
INPAapiResultText(text_var,"ID_COD_INDEX",1,"");
|
|||
|
ftextout(text_var,3,45,0,1);
|
|||
|
|
|||
|
ftextout("Varianten-Index",5,0,0,0);
|
|||
|
ftextout(":",5,43,0,0);
|
|||
|
INPAapiResultText(text_var,"ID_VAR_INDEX",1,"");
|
|||
|
ftextout(text_var,5,45,0,1);
|
|||
|
|
|||
|
ftextout("Diagnose-Index",7,0,0,0);
|
|||
|
ftextout(":",7,43,0,0);
|
|||
|
INPAapiResultText(text_var,"ID_DIAG_INDEX",1,"");
|
|||
|
ftextout(text_var,7,45,0,1);
|
|||
|
|
|||
|
ftextout("Hardwarenummer",9,0,0,0);
|
|||
|
ftextout(":",9,43,0,0);
|
|||
|
INPAapiResultText(text_var,"ID_HW_NR",1,"");
|
|||
|
ftextout(text_var,9,45,0,1);
|
|||
|
|
|||
|
ftextout("Softwarenummer Funktionssoftware",11,0,0,0);
|
|||
|
ftextout(":",11,43,0,0);
|
|||
|
INPAapiResultText(text_var,"ID_SW_NR_FSV",1,"");
|
|||
|
ftextout(text_var,11,45,0,1);
|
|||
|
|
|||
|
ftextout("Softwarenummer Betriebssystem",13,0,0,0);
|
|||
|
ftextout(":",13,43,0,0);
|
|||
|
INPAapiResultText(text_var,"ID_SW_NR_OSV",1,"");
|
|||
|
ftextout(text_var,13,45,0,1);
|
|||
|
|
|||
|
ftextout("Softwarenummer Nachrichtenkatalog",15,0,0,0);
|
|||
|
ftextout(":",15,43,0,0);
|
|||
|
INPAapiResultText(text_var,"ID_SW_NR_MCV",1,"");
|
|||
|
ftextout(text_var,15,45,0,1);
|
|||
|
|
|||
|
ftextout("Softwarenummer (Reserve) Zur Zeit nicht benutzt",17,0,0,0);
|
|||
|
ftextout(":",17,43,0,0);
|
|||
|
INPAapiResultText(text_var,"ID_SW_NR_RES",1,"");
|
|||
|
ftextout(text_var,17,45,0,1);
|
|||
|
|
|||
|
ftextout("Herstelldatum",19,0,0,0);
|
|||
|
ftextout(":",19,43,0,0);
|
|||
|
INPAapiResultText(text_var,"ID_DATUM",1,"");
|
|||
|
ftextout(text_var,19,45,0,1);
|
|||
|
|
|||
|
ftextout("Lieferant",21,0,0,0);
|
|||
|
ftextout(":",21,43,0,0);
|
|||
|
INPAapiResultText(text_var,"ID_LIEF_TEXT",1,"");
|
|||
|
ftextout(text_var,21,45,0,1);
|
|||
|
}
|
|||
|
// *** AIF, Anwender-Information
|
|||
|
// *** auf 2. Seite von IDENT
|
|||
|
|
|||
|
LINE("Anwender-Information","")
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"AIF_LESEN","","");
|
|||
|
INP1apiResultText(fehlerflag,job_status,"JOB_STATUS",1,"");
|
|||
|
INP1apiErrorCode(errorcode);
|
|||
|
ftextout("",10,0,0,0);
|
|||
|
|
|||
|
if ((fehlerflag == FALSE) && (errorcode == 98))//98=SYS-0008: Job nicht gefunden
|
|||
|
{
|
|||
|
ftextout("Kein Anwenderinfofeld (AIF_LESEN) vorhanden" ,3,0,0,0);
|
|||
|
}
|
|||
|
else if (((fehlerflag == FALSE) && (errorcode != 98)) || (job_status != "OKAY"))
|
|||
|
{
|
|||
|
ftextout("Fehler beim Lesen von Job: AIF_LESEN",1,0,0,0);
|
|||
|
if (errorcode != 0)
|
|||
|
{
|
|||
|
inttostring(errorcode, errorcode_text);
|
|||
|
INP1apiErrorText(error_text);
|
|||
|
error_text= "Ediabas-Fehlermeldung Nr.: "+errorcode_text+": "+ error_text;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
error_text= "Job-Status-Fehlermeldung: "+job_status;
|
|||
|
}
|
|||
|
ftextout(error_text ,2,0,0,0);
|
|||
|
ftextout("" ,3,0,0,0);
|
|||
|
INPAapiCheckJobStatus("OKAY");//um Fehler auszugeben
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
INPAapiResultInt(ganz_zahl,"AIF_ANZ_DATEN",1);
|
|||
|
if (ganz_zahl > 18) // lange AIF ausgeben
|
|||
|
{
|
|||
|
ftextout("Fahrgestell Nr.",1,0,0,0);
|
|||
|
ftextout(":",1,43,0,0);
|
|||
|
INPAapiResultText(text_var,"AIF_FG_NR",1,"");
|
|||
|
ftextout(text_var,1,45,0,1);
|
|||
|
|
|||
|
ftextout("Zusammenbau Nr.",3,0,0,0);
|
|||
|
ftextout(":",3,43,0,0);
|
|||
|
INPAapiResultText(text_var,"AIF_ZB_NR",1,"");
|
|||
|
ftextout(text_var,3,45,0,1);
|
|||
|
|
|||
|
ftextout("Programmier-Datum",5,0,0,0);
|
|||
|
ftextout(":",5,43,0,0);
|
|||
|
INPAapiResultText(text_var,"AIF_DATUM",1,"");
|
|||
|
ftextout(text_var,5,45,0,1);
|
|||
|
|
|||
|
ftextout("Datensatz Nr.",7,0,0,0);
|
|||
|
ftextout(":",7,43,0,0);
|
|||
|
INPAapiResultText(text_var,"AIF_SW_NR",1,"");
|
|||
|
ftextout(text_var,7,45,0,1);
|
|||
|
|
|||
|
ftextout("Beh<65>rden Nr.",9,0,0,0);
|
|||
|
ftextout(":",9,43,0,0);
|
|||
|
INPAapiResultText(text_var,"AIF_BEHOERDEN_NR",1,"");
|
|||
|
ftextout(text_var,9,45,0,1);
|
|||
|
|
|||
|
ftextout("H<>ndler Nr.",11,0,0,0);
|
|||
|
ftextout(":",11,43,0,0);
|
|||
|
INPAapiResultText(text_var,"AIF_HAENDLER_NR",1,"");
|
|||
|
ftextout(text_var,11,45,0,1);
|
|||
|
|
|||
|
ftextout("Tester Nr.",13,0,0,0);
|
|||
|
ftextout(":",13,43,0,0);
|
|||
|
INPAapiResultText(text_var,"AIF_SERIEN_NR",1,"");
|
|||
|
ftextout(text_var,13,45,0,1);
|
|||
|
|
|||
|
ftextout("km-Stand",15,0,0,0);
|
|||
|
ftextout(":",15,43,0,0);
|
|||
|
INPAapiResultText(text_var,"AIF_KM",1,"");
|
|||
|
ftextout(text_var,15,45,0,1);
|
|||
|
|
|||
|
ftextout("Programm-Stand",17,0,0,0);
|
|||
|
ftextout(":",17,43,0,0);
|
|||
|
INPAapiResultText(text_var,"AIF_PROG_NR",1,"");
|
|||
|
ftextout(text_var,17,45,0,1);
|
|||
|
|
|||
|
ftextout("Adresse AIF",19,0,0,0);
|
|||
|
ftextout(":",19,43,0,0);
|
|||
|
INPAapiResultInt(ganz_zahl,"AIF_ADRESSE_LOW",1);
|
|||
|
inttohexstring(ganz_zahl,4,text_var);
|
|||
|
ftextout(text_var,19,45,0,1);
|
|||
|
|
|||
|
ftextout("Anzahl freie AIF",21,0,0,0);
|
|||
|
ftextout(":",21,43,0,0);
|
|||
|
INPAapiResultText(text_var,"AIF_ANZ_FREI",1,"");
|
|||
|
ftextout(text_var,21,45,0,1);
|
|||
|
|
|||
|
ftextout("Anzahl Daten AIF",23,0,0,0);
|
|||
|
ftextout(":",23,43,0,0);
|
|||
|
INPAapiResultText(text_var,"AIF_ANZ_DATEN",1,"");
|
|||
|
ftextout(text_var,23,45,0,1);
|
|||
|
}
|
|||
|
else //18 Byte -> kurze AIF ausgeben
|
|||
|
{
|
|||
|
ftextout("Fahrgestell Nr.",1,0,0,0);
|
|||
|
ftextout(":",1,43,0,0);
|
|||
|
INPAapiResultText(text_var,"AIF_FG_NR",1,"");
|
|||
|
ftextout(text_var,1,45,0,1);
|
|||
|
|
|||
|
ftextout("Zusammenbau Nr.",3,0,0,0);
|
|||
|
ftextout(":",3,43,0,0);
|
|||
|
INPAapiResultText(text_var,"AIF_ZB_NR",1,"");
|
|||
|
ftextout(text_var,3,45,0,1);
|
|||
|
|
|||
|
ftextout("Programmier-Datum",5,0,0,0);
|
|||
|
ftextout(":",5,43,0,0);
|
|||
|
INPAapiResultText(text_var,"AIF_DATUM",1,"");
|
|||
|
ftextout(text_var,5,45,0,1);
|
|||
|
|
|||
|
ftextout("Adresse AIF",19,0,0,0);
|
|||
|
ftextout(":",19,43,0,0);
|
|||
|
INPAapiResultInt(ganz_zahl,"AIF_ADRESSE_LOW",1);
|
|||
|
inttohexstring(ganz_zahl,4,text_var);
|
|||
|
ftextout(text_var,19,45,0,1);
|
|||
|
|
|||
|
ftextout("Anzahl freie AIF",21,0,0,0);
|
|||
|
ftextout(":",21,43,0,0);
|
|||
|
INPAapiResultText(text_var,"AIF_ANZ_FREI",1,"");
|
|||
|
ftextout(text_var,21,45,0,1);
|
|||
|
|
|||
|
ftextout("Anzahl Daten AIF",23,0,0,0);
|
|||
|
ftextout(":",23,43,0,0);
|
|||
|
INPAapiResultText(text_var,"AIF_ANZ_DATEN",1,"");
|
|||
|
ftextout(text_var,23,45,0,1);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
LINE("CFG Lesen","")
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"C_FG_LESEN","","");
|
|||
|
INP1apiResultText(fehlerflag,job_status,"JOB_STATUS",1,"");
|
|||
|
INP1apiErrorCode(errorcode);
|
|||
|
ftextout("Codierdaten",0,0,0,1);
|
|||
|
ftextout("",10,0,0,0);// um auf einer neuen Seite darzustellen
|
|||
|
|
|||
|
if ((fehlerflag == FALSE) && (errorcode == 98))//98=SYS-0008: Job nicht gefunden
|
|||
|
{
|
|||
|
ftextout("Kein Fahrgestellnummer lesen (CFG_LESEN) vorhanden " ,3,0,0,0);
|
|||
|
}
|
|||
|
else if (((fehlerflag == FALSE) && (errorcode != 98)) || (job_status != "OKAY"))
|
|||
|
{
|
|||
|
ftextout("Fehler beim Lesen von Job: C_FG_LESEN",1,0,0,0);
|
|||
|
if (errorcode != 0)
|
|||
|
{
|
|||
|
inttostring(errorcode, errorcode_text);
|
|||
|
INP1apiErrorText(error_text);
|
|||
|
error_text= "Ediabas-Fehlermeldung Nr.: "+errorcode_text+": "+ error_text;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
error_text= "Job-Status-Fehlermeldung: "+job_status;
|
|||
|
}
|
|||
|
ftextout(error_text ,2,0,0,0);
|
|||
|
ftextout("" ,3,0,0,0);
|
|||
|
INPAapiCheckJobStatus("OKAY");//um Fehler auszugeben
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
ftextout("Fahrgestell Nr.",3,0,0,0);
|
|||
|
ftextout(":",3,43,0,0);
|
|||
|
INPAapiResultText(text_var,"FG_NR",1,"");
|
|||
|
ftextout(text_var,3,45,0,1);
|
|||
|
}
|
|||
|
|
|||
|
INPAapiJob(sgbd,"C_AEI_LESEN","","");
|
|||
|
INP1apiResultText(fehlerflag,job_status,"JOB_STATUS",1,"");
|
|||
|
INP1apiErrorCode(errorcode);
|
|||
|
|
|||
|
if ((fehlerflag == FALSE) && (errorcode == 98))//98=SYS-0008: Job nicht gefunden
|
|||
|
{
|
|||
|
ftextout("Kein Codierdaten<65>nderungsindex (C_AEI_LESEN) vorhanden" ,3,0,0,0);
|
|||
|
}
|
|||
|
else if (((fehlerflag == FALSE) && (errorcode != 98)) || (job_status != "OKAY"))
|
|||
|
{
|
|||
|
INPAapiCheckJobStatus("OKAY");//um Fehler auszugeben
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
ftextout("Codierdaten<65>nderungsindex",6,0,0,0);
|
|||
|
ftextout(":",6,43,0,0);
|
|||
|
INPAapiResultText(text_var,"COD_AE_INDEX",1,"");
|
|||
|
ftextout(text_var,6,45,0,1);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// ****************************************************************************
|
|||
|
// *** Identinformationen werden <20>ber SVK_LESEN ermittelt ***
|
|||
|
// *** SVK: Steuerger<65>eVerbauKennung Soft- und Hardware f<>r UDS (ISO 14229) ***
|
|||
|
// ****************************************************************************
|
|||
|
SCREEN s_svk_lesen()
|
|||
|
{
|
|||
|
string text_var;
|
|||
|
string text_var2;
|
|||
|
int ganz_zahl;
|
|||
|
string job_status="???"; // f<>r Job_Statuskontrolle
|
|||
|
bool fehlerflag; // Fehlerflag
|
|||
|
int sets; // Anzahl sets
|
|||
|
int errorcode; // EDIABAS Fehlernummer
|
|||
|
string errorcode_text; // EDIABAS Fehlernummer
|
|||
|
string error_text; // EDIABAS Fehlertext als Text
|
|||
|
bool eingabeWeiter;
|
|||
|
int input_state; // Eingabestatus
|
|||
|
int input_ok=1; // Eingabe mit Nein beendet
|
|||
|
int i;
|
|||
|
int offset;
|
|||
|
int einheiten_anz;
|
|||
|
int pos;
|
|||
|
real realval;
|
|||
|
real realval2;
|
|||
|
long longval;
|
|||
|
long rest_long;
|
|||
|
long multiplik_long;
|
|||
|
|
|||
|
ftextout("Steuerger<65>teverbaukennung Soft- und Hardware",1,0,1,0);
|
|||
|
ftextout("",2,0,0,1);
|
|||
|
LINE("Hersteller Information","")
|
|||
|
{//HERSTELLINFO_LESEN ist kein Pflichtjob! (Stand: 03.2006)
|
|||
|
INPAapiJob(sgbd,"HERSTELLINFO_LESEN","","");
|
|||
|
INP1apiResultText(fehlerflag,job_status,"JOB_STATUS",1,"");
|
|||
|
INP1apiErrorCode(errorcode);
|
|||
|
if ((fehlerflag == FALSE) && (errorcode == 98))//98=SYS-0008: Job nicht gefunden
|
|||
|
{
|
|||
|
ftextout("Keine Herstellerinformationen vorhanden" ,1,0,0,0);
|
|||
|
ftextout("" ,2,0,0,0);
|
|||
|
}
|
|||
|
else if (((fehlerflag == FALSE) && (errorcode != 98)) || (job_status != "OKAY"))
|
|||
|
{
|
|||
|
ftextout("Fehler beim Lesen von Job: HERSTELLINFO_LESEN",1,0,0,0);
|
|||
|
if (errorcode != 0)
|
|||
|
{
|
|||
|
inttostring(errorcode, errorcode_text);
|
|||
|
INP1apiErrorText(error_text);
|
|||
|
error_text= "Ediabas-Fehlermeldung Nr.: "+errorcode_text+": "+ error_text;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
error_text= "Job-Status-Fehlermeldung: "+job_status;
|
|||
|
}
|
|||
|
ftextout(error_text ,2,0,0,0);
|
|||
|
ftextout("" ,3,0,0,0);
|
|||
|
INPAapiCheckJobStatus("OKAY");//um Fehler auszugeben
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
ftextout("Herstelldatum",1,0,0,0);
|
|||
|
ftextout(":",1,41,0,0);
|
|||
|
INPAapiResultText(text_var,"ID_DATUM",1,"");
|
|||
|
ftextout(text_var,1,45,0,1);
|
|||
|
|
|||
|
ftextout("Lieferant",2,0,0,0);
|
|||
|
ftextout(":",2,41,0,0);
|
|||
|
INPAapiResultText(text_var,"ID_LIEF_TEXT",1,"");
|
|||
|
ftextout(text_var,2,45,0,1);
|
|||
|
ftextout("--------------------------------------------------------------------------------------------------------------------------------",3,0,0,0);
|
|||
|
ftextout("",4,0,0,0);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
LINE("Ident","")
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"IDENT","","");
|
|||
|
INP1apiResultText(fehlerflag,job_status,"JOB_STATUS",1,"");
|
|||
|
INP1apiErrorCode(errorcode);
|
|||
|
/* if ((fehlerflag == FALSE) && (errorcode == 98))//98=SYS-0008: Job nicht gefunden
|
|||
|
{
|
|||
|
ftextout("Kein Ident vorhanden" ,1,0,0,0);
|
|||
|
ftextout("" ,2,0,0,0);
|
|||
|
}
|
|||
|
else */if (((fehlerflag == FALSE) /*&& (errorcode != 98)*/) || (job_status != "OKAY"))
|
|||
|
{
|
|||
|
ftextout("Fehler beim Lesen von Job: IDENT",1,0,0,0);
|
|||
|
if (errorcode != 0)
|
|||
|
{
|
|||
|
inttostring(errorcode, errorcode_text);
|
|||
|
INP1apiErrorText(error_text);
|
|||
|
error_text= "Ediabas-Fehlermeldung Nr.: "+errorcode_text+": "+ error_text;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
error_text= "Job-Status-Fehlermeldung: "+job_status;
|
|||
|
}
|
|||
|
ftextout(error_text ,2,0,0,0);
|
|||
|
ftextout("" ,3,0,0,0);
|
|||
|
INPAapiCheckJobStatus("OKAY");//um Fehler auszugeben
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
ftextout("Steuerger<65>te-Adresse",1,0,0,0);
|
|||
|
ftextout(":",1,41,0,0);
|
|||
|
INPAapiResultInt(ganz_zahl,"ID_SG_ADR",1);
|
|||
|
inttohexstring(ganz_zahl,4,text_var);
|
|||
|
//F<>hrende Nullen ausblenden
|
|||
|
if (ganz_zahl <= 255) midstr(text_var,text_var,2,2);
|
|||
|
ftextout("0x"+text_var,1,45,0,1);
|
|||
|
|
|||
|
ftextout("SGBD-Index",2,0,0,0);
|
|||
|
ftextout(":",2,41,0,0);
|
|||
|
INPAapiResultBinary("_RESPONSE",1);
|
|||
|
GetBinaryDataString (text_var,i);
|
|||
|
midstr(text_var,text_var,6,11);
|
|||
|
|
|||
|
ftextout("0x"+text_var,2,45,0,1);
|
|||
|
ftextout("--------------------------------------------------------------------------------------------------------------------------------",3,0,0,0);
|
|||
|
ftextout("",4,0,0,0);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
LINE("SVK","")
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"SVK_LESEN","","");
|
|||
|
//INPAapiCheckJobStatus("OKAY"); //nicht anwendbar, da es mehrere Sets gibt und JOB_STATUS im letzten steht. Daher Fehlerausgabe manuell umsetzen
|
|||
|
sets=0;
|
|||
|
INP1apiResultSets(fehlerflag,sets);
|
|||
|
|
|||
|
if ((fehlerflag == FALSE) || (sets <= 1))
|
|||
|
{
|
|||
|
ftextout("Fehler beim Lesen von Job: SVK_LESEN",1,0,0,0);
|
|||
|
INP1apiErrorCode(errorcode);
|
|||
|
if (errorcode != 0)
|
|||
|
{
|
|||
|
inttostring(errorcode, errorcode_text);
|
|||
|
INP1apiErrorText(error_text);
|
|||
|
error_text= "Ediabas-Fehlermeldung Nr.: "+errorcode_text+": "+ error_text;
|
|||
|
ftextout(error_text ,2,0,0,0);
|
|||
|
INPAapiResultSets(sets);//um Fehler auszugeben. Bsp.: IFH-0009: NO RESPONSE FROM CONTROLUNIT
|
|||
|
}
|
|||
|
else
|
|||
|
{//Nur m<>glich, da bei diesem Fehler der letzte Satz=1!
|
|||
|
INP1apiResultText(fehlerflag,job_status,"JOB_STATUS",sets,"");
|
|||
|
error_text= "Job-Status-Fehlermeldung: "+job_status;
|
|||
|
ftextout(error_text,2,0,0,0);
|
|||
|
INPAapiCheckJobStatus("OKAY");//um Fehler auszugeben. Bsp.: JOB_STATUS= ERROR_ECU_INCORRECT_LEN
|
|||
|
}
|
|||
|
ftextout("" ,3,0,0,0);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
INPAapiResultText(text_var,"PROG_DATUM",sets,"");
|
|||
|
ftextout("Programm-Datum",0,0,0,0);
|
|||
|
ftextout(":",0,41,0,0);
|
|||
|
ftextout(text_var,0,45,0,1);
|
|||
|
|
|||
|
INPAapiResultText(text_var,"PROG_KM",sets,"");
|
|||
|
if (text_var == "-1") text_var= "- - -";
|
|||
|
ftextout("Programm-km",1,0,0,0);
|
|||
|
ftextout(":",1,41,0,0);
|
|||
|
ftextout(text_var,1,45,0,1);
|
|||
|
|
|||
|
INPAapiResultText(text_var,"ANZAHL_EINHEITEN",sets,"");
|
|||
|
INPAapiResultInt(einheiten_anz,"ANZAHL_EINHEITEN",sets);
|
|||
|
ftextout("Anzahl Proze<7A>klassen",2,0,0,0);
|
|||
|
ftextout(":",2,41,0,0);
|
|||
|
ftextout(text_var,2,45,0,1);
|
|||
|
|
|||
|
ftextout("Proze<7A>klasse",5,2,0,1);
|
|||
|
ftextout("SGBM Identifier ",5,43,0,1);
|
|||
|
ftextout("Version",5,62,0,1);
|
|||
|
|
|||
|
i=1;
|
|||
|
offset=0;
|
|||
|
while(i<=einheiten_anz)
|
|||
|
{
|
|||
|
inttostring(i,text_var2);
|
|||
|
INPAapiResultText(text_var,"PROZESSKLASSE_TEXT",i,"");
|
|||
|
ftextout(text_var2+") "+text_var,6+offset,0,0,0);
|
|||
|
|
|||
|
//SGBM Identifier
|
|||
|
ftextout(":",6+offset,41,0,0);
|
|||
|
INPAapiResultText(text_var,"SGBM_IDENTIFIER",i,"");
|
|||
|
ftextout(text_var,6+offset,45,0,1);
|
|||
|
|
|||
|
//Version
|
|||
|
INPAapiResultText(text_var,"VERSION",i,"");
|
|||
|
ftextout(text_var,6+offset,62,0,1);
|
|||
|
i=i+1;//um n<>chsten Set zu laden
|
|||
|
offset=offset+1;
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// **************************
|
|||
|
// *** Speicherscreen ***
|
|||
|
// **************************
|
|||
|
SCREEN s_speicher()
|
|||
|
{
|
|||
|
ftextout("Speicher lesen",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
LINE("","")
|
|||
|
{
|
|||
|
if (speicher_lesen_lar_flag==TRUE) ftextout("< F1 > LAR lesen" , 4,5,0,1);
|
|||
|
if (speicher_lesen_flash_flag==TRUE) ftextout("< F2 > FLASH lesen" , 6,5,0,1);
|
|||
|
if (speicher_lesen_uifm_flag==TRUE) ftextout("< F3 > UIFM lesen" , 8,5,0,1);
|
|||
|
if (speicher_lesen_romi_flag==TRUE) ftextout("< F4 > ROMI lesen" ,10,5,0,1);
|
|||
|
if (speicher_lesen_ramis_flag==TRUE) ftextout("< F5 > RAMIS lesen" ,12,5,0,1);
|
|||
|
if (speicher_lesen_ramil_flag==TRUE) ftextout("< F6 > RAMIL lesen" ,14,5,0,1);
|
|||
|
if (speicher_lesen_nvram_flag==TRUE) ftextout("< F7 > NVRAM lesen" ,16,5,0,1);
|
|||
|
if (speicher_lesen_romx_flag==TRUE) ftextout("<Shift> + < F4 > ROMX lesen" ,10,45,0,1);
|
|||
|
if (speicher_lesen_ramxx_flag==TRUE) ftextout("<Shift> + < F5 > RAMXX lesen" ,12,45,0,1);
|
|||
|
|
|||
|
ftextout("< F9 > Bildschirmdruck" ,20,5,0,1);
|
|||
|
ftextout("< F10> Zur<75>ck" ,22,5,0,1);
|
|||
|
ftextout("<Shift> + < F10> Exit" ,22,45,0,1);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// **************************
|
|||
|
// *** Speicherscreen ***
|
|||
|
// *** Ausgabe ***
|
|||
|
// **************************
|
|||
|
SCREEN s_speicher_ausgabe()
|
|||
|
{
|
|||
|
string text_var;
|
|||
|
string job_state;
|
|||
|
|
|||
|
ftextout(speicher_lesen_text,1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
INPAapiJob(sgbd,"SPEICHER_LESEN",speicher_lesen_seg_adr_anz,"");
|
|||
|
INPAapiResultText(job_state,"JOB_STATUS",1,"");
|
|||
|
LINE("","")
|
|||
|
{
|
|||
|
ftextout("Startadresse",1,0,0,0);
|
|||
|
ftextout(":",1,18,0,1);
|
|||
|
ftextout(speicher_lesen_adresse,1,20,0,1);
|
|||
|
ftextout("Anzahl",3,0,0,0);
|
|||
|
ftextout(":",3,18,0,1);
|
|||
|
inttostring(speicher_lesen_anzahl,text_var);
|
|||
|
ftextout(text_var,3,20,0,1);
|
|||
|
ftextout("Daten",5,0,0,0);
|
|||
|
ftextout(":",5,18,0,1);
|
|||
|
if(job_state != "OKAY")
|
|||
|
ftextout(job_state,5,20,0,1);
|
|||
|
else
|
|||
|
{
|
|||
|
INPAapiResultBinary("DATEN",1);
|
|||
|
hexdump(speicher_lesen_adresse,speicher_lesen_anzahl,5,20);
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// **************************
|
|||
|
// *** Fehlerscreen ***
|
|||
|
// **************************
|
|||
|
SCREEN s_fehler()
|
|||
|
{
|
|||
|
ftextout("Fehlerspeicher",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
LINE("","")
|
|||
|
{
|
|||
|
if (fs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
ftextout("< F1 > Fehlerspeicher lesen" , 4,5,0,1);
|
|||
|
ftextout("< F2 > Fehlerspeicher l<>schen" , 6,5,0,1);
|
|||
|
ftextout("< F9 > Fehlerspeicher drucken" ,20,5,0,1);
|
|||
|
if (fs_lesen_save_as_flag == TRUE)
|
|||
|
ftextout("<Shift> + < F9 > Fehlerspeicher speichern" ,20,45,0,1);
|
|||
|
}
|
|||
|
|
|||
|
if (is_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
ftextout("< F3 > Infospeicher lesen" , 8,5,0,1);
|
|||
|
if (is_loeschen_flag == TRUE) ftextout("< F4 > Infospeicher l<>schen" ,10,5,0,1);
|
|||
|
ftextout("< F8 > Infospeicher drucken" ,18,5,0,1);
|
|||
|
if (is_lesen_save_as_flag == TRUE)
|
|||
|
ftextout("<Shift> + < F8 > Infospeicher speichern" ,18,45,0,1);
|
|||
|
}
|
|||
|
|
|||
|
if (hs_lesen_flag == TRUE)
|
|||
|
{
|
|||
|
ftextout("< F5 > Historienspeicher lesen" ,12,5,0,1);
|
|||
|
if (hs_loeschen_flag == TRUE) ftextout("< F6 > Historienspeicher l<>schen" ,14,5,0,1);
|
|||
|
ftextout("< F7 > Historienspeicher drucken" ,16,5,0,1);
|
|||
|
if (hs_lesen_save_as_flag == TRUE)
|
|||
|
ftextout("<Shift> + < F7 > Historienspeicher speichern",16,45,0,1);
|
|||
|
}
|
|||
|
ftextout("< F10> Zur<75>ck" ,22,5,0,1);
|
|||
|
ftextout("<Shift> + < F10> Exit" ,22,45,0,1);
|
|||
|
}
|
|||
|
}
|
|||
|
// -- EOF --
|
|||
|
// end of :#include "BMW_STD.SRC"
|
|||
|
|
|||
|
//Importiere GetTickCount()
|
|||
|
/* Die Funktion gibt einen systeminternen Z<>hlerwert in Millisekunden zur<75>ck.
|
|||
|
Ist in B2RUNTIM.LIB enthalten, kann aber in INPA nicht direkt aufgerufen werden.
|
|||
|
Wird daher aus "kernel32" importiert */
|
|||
|
import32 "C" lib "kernel32::GetTickCount" gettickcount (returns: long counter);
|
|||
|
|
|||
|
//IMPORT Beispiel
|
|||
|
//import pascal lib "user.exe::MessageBox" MyMessageBox( in: int handle1,in: string text1, in: string kopf, in: int Art, returns: int ret );
|
|||
|
|
|||
|
|
|||
|
// ****************************************************
|
|||
|
// *** Initialisierungsfunktion ***
|
|||
|
// ****************************************************
|
|||
|
ScriptInit()
|
|||
|
{
|
|||
|
|
|||
|
|
|||
|
settitle(titel+" Version "+version);
|
|||
|
}
|
|||
|
|
|||
|
// ****************************************************
|
|||
|
// *** User-Funktionen ***
|
|||
|
// ****************************************************
|
|||
|
//********************************************
|
|||
|
//** Ausgabe von Texten *****
|
|||
|
//********************************************
|
|||
|
|
|||
|
ergebnisAusgabeTxt(in:string text1, in:string ResultText, in:int Zeile, in:int Spalte,
|
|||
|
in:int OffsetY1, in:int OffsetX1)
|
|||
|
{
|
|||
|
int ergSatz;
|
|||
|
string s_temp="";
|
|||
|
|
|||
|
textout(text1,Zeile,Spalte);
|
|||
|
ergSatz=1;
|
|||
|
INPAapiResultText(s_temp,ResultText,ergSatz,"");
|
|||
|
textout(s_temp,Zeile+OffsetY1,Spalte+OffsetX1);
|
|||
|
}
|
|||
|
|
|||
|
//neu
|
|||
|
//*******************************************
|
|||
|
//** Ausgabe Int-Werte *****
|
|||
|
//*******************************************
|
|||
|
|
|||
|
ergebnisAusgabeInt(in:string text1, in:string ResultText, in:int Zeile, in:int Spalte,
|
|||
|
in:int OffsetY1, in:int OffsetX1)
|
|||
|
{
|
|||
|
int ergSatz;
|
|||
|
int i_temp;
|
|||
|
string s_temp,s;
|
|||
|
|
|||
|
textout(text1,Zeile,Spalte);
|
|||
|
ergSatz=1;
|
|||
|
INPAapiResultInt(i_temp,ResultText,ergSatz);
|
|||
|
inttostring(i_temp,s_temp);
|
|||
|
textout(s_temp,Zeile+OffsetY1,Spalte+OffsetX1);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
//neu
|
|||
|
//*******************************************
|
|||
|
//** Ausgabe Analog-Werte *****
|
|||
|
//*******************************************
|
|||
|
|
|||
|
ergebnisAusgabeAnalog(in:string text1, in:string ResultText, in:string format, in:int Zeile, in:int Spalte,
|
|||
|
in:int OffsetY1, in:int OffsetX1)
|
|||
|
{
|
|||
|
int ergSatz;
|
|||
|
real r_temp;
|
|||
|
string s_temp;
|
|||
|
|
|||
|
textout(text1,Zeile,Spalte);
|
|||
|
|
|||
|
ergSatz=1;
|
|||
|
|
|||
|
INPAapiResultAnalog(r_temp,ResultText,ergSatz);
|
|||
|
realtostring(r_temp, format, s_temp);
|
|||
|
textout(s_temp,Zeile+OffsetY1,Spalte+OffsetX1);
|
|||
|
}
|
|||
|
|
|||
|
// Ausgabe eines Ergebnisses als Digitalwert des 1. Satzes mit Job-Status-Ueberpruefung
|
|||
|
ergebnisDigitalAusgabe(in: string ergebnis,in: int y,in: int x,in: string trueText,in: string falseText) {
|
|||
|
bool tmpBool;
|
|||
|
|
|||
|
INPAapiResultDigital(tmpBool,ergebnis,1);
|
|||
|
digitalout(tmpBool,y,x,trueText,falseText);
|
|||
|
}
|
|||
|
|
|||
|
//** Neuen Sollwert berechnen f<>r LL-Drehzahl
|
|||
|
//** Job-Status-Ueberpruefung, Grenzen werden ebenfalls abgefangen
|
|||
|
llerh(in: int wohin)
|
|||
|
{
|
|||
|
int i_help;
|
|||
|
int temp_ll;
|
|||
|
string s1;
|
|||
|
real r_help;
|
|||
|
real r1;
|
|||
|
|
|||
|
if ((Diag_Index=="18")||(Diag_Index=="33")||(Diag_Index=="49"))
|
|||
|
{
|
|||
|
i_help = ll_wert + wohin;
|
|||
|
if (i_help >= 3000) i_help = 3000;
|
|||
|
if (i_help <= 650) i_help = 650;
|
|||
|
inttostring(i_help,s1);
|
|||
|
INPAapiJob(sgbd,"ABGLEICH_VERSTELLEN","LLABS;0","");
|
|||
|
INPAapiJob(sgbd,"ABGLEICH_VERSTELLEN","LLABS;"+s1,"");
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 != "OKAY") { messagebox("START ABGLEICH_VERSTELLEN",s1); stop(); }
|
|||
|
ll_wert = i_help;
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
i_help = ll_wert + wohin;
|
|||
|
if (i_help >= 1200) i_help = 1200;
|
|||
|
if (i_help <= -150) i_help = 150;
|
|||
|
inttostring(i_help,s1);
|
|||
|
INPAapiJob(sgbd,"ABGLEICH_VERSTELLEN","LLA;0","");
|
|||
|
INPAapiJob(sgbd,"ABGLEICH_VERSTELLEN","LLA;"+s1,"");
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 != "OKAY") { messagebox("START ABGLEICH_VERSTELLEN",s1); stop(); }
|
|||
|
ll_wert = i_help;
|
|||
|
}
|
|||
|
}
|
|||
|
INPAapiResultLong(out: long returnlong, in: string inparesult,in: int set_val)
|
|||
|
{
|
|||
|
|
|||
|
real realval;
|
|||
|
real realval2;
|
|||
|
long rest_long;
|
|||
|
long multiplik_long;
|
|||
|
long longval;
|
|||
|
|
|||
|
// Abholen einer LONG Variablen als REAL und Umwandlung in LONG
|
|||
|
INPAapiResultAnalog( realval,inparesult,set_val); //realval=987344.0
|
|||
|
|
|||
|
realval2= realval/65535; //15.0659 (real)
|
|||
|
realtostring(realval2,"8.0",text_var); //15 (string)
|
|||
|
stringtoint(text_var,ganz_zahl); //15 (integer)
|
|||
|
inttolong(ganz_zahl,multiplik_long); //15 (long) Multiplikator
|
|||
|
|
|||
|
longval= 65535*multiplik_long; //983025= 65535*15 (long)
|
|||
|
longtoreal(longval,realval2); //983025 (real)
|
|||
|
realval2= realval-realval2; //4319.0= 987344.0-983025.0
|
|||
|
|
|||
|
realtoint(realval2, ganz_zahl); //4319 (integer)
|
|||
|
inttolong(ganz_zahl,rest_long); //4319 (long) Rest
|
|||
|
longval= (65535*multiplik_long)+rest_long;
|
|||
|
returnlong = longval;
|
|||
|
}
|
|||
|
|
|||
|
exp(out: real ergebnis, in: real basis, in: int exponent) //allgemeine Exponentialfunktion
|
|||
|
{
|
|||
|
int i=1;
|
|||
|
real produkt;
|
|||
|
|
|||
|
|
|||
|
if (exponent == 0) ergebnis = 1;
|
|||
|
else
|
|||
|
{
|
|||
|
produkt = basis;
|
|||
|
while (i < exponent)
|
|||
|
{
|
|||
|
produkt = produkt * basis;
|
|||
|
i=i+1;
|
|||
|
}
|
|||
|
ergebnis = produkt;
|
|||
|
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
//*********************************
|
|||
|
//*** Ansteuerung ***
|
|||
|
//*********************************
|
|||
|
|
|||
|
steller_ansteuer(in : string label,in: int Tastung) //allgemeine Funktion zur Stellgliedansteuerung <20>ber STEUERN_SELECTIV Job
|
|||
|
{
|
|||
|
string s1,s2,st_sub;
|
|||
|
real tu,to;
|
|||
|
int laenge,pos1,pos2;
|
|||
|
int z1,sp1;
|
|||
|
|
|||
|
|
|||
|
if (Tastung == 0xFE) INPAapiJob(sgbd,"STEUERN_WERT_LESEN",label,"");
|
|||
|
else {
|
|||
|
if (Tastung == 0xFF) {INPAapiJob(sgbd,"STEUERN_ENDE_SELECTIV",label,"");start();}
|
|||
|
else
|
|||
|
{
|
|||
|
inttostring(Tastung,s1);
|
|||
|
INPAapiJob(sgbd,"STEUERN_SELECTIV",label+";"+s1,"");
|
|||
|
start();
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 != "OKAY") {messagebox("STEUERN_"+label,s1);stop();}
|
|||
|
if (Tastung == 0xFE)
|
|||
|
{
|
|||
|
s1 = "Status ["+st_dim+"]: ";
|
|||
|
textout(blank, 23,0);
|
|||
|
textout(s1, 23,5);
|
|||
|
if (st_dim=="-")
|
|||
|
{
|
|||
|
INPAapiResultDigital(logik_var,"STEUERN_LESEN_WERT",1);
|
|||
|
digitalout(logik_var, 25, 5, "EIN ", "AUS ");
|
|||
|
}
|
|||
|
else if (st_dim=="%")
|
|||
|
{
|
|||
|
INPAapiResultAnalog(zahlen_var,"STEUERN_LESEN_WERT",1);
|
|||
|
analogout(zahlen_var, 25,5, 0.0, 100.0, 0.0, 100.0, "3.2");
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
INPAapiResultAnalog(zahlen_var,"STEUERN_LESEN_WERT",1);
|
|||
|
inttoreal(st_aus,tu);
|
|||
|
inttoreal(st_ein,to);
|
|||
|
analogout(zahlen_var, 25,5, 0.9*tu, 1.1*to, 0.9*tu, 1.1*to, "3.2");
|
|||
|
}
|
|||
|
strlen(laenge,st_add_label);
|
|||
|
if (laenge > 0)
|
|||
|
{
|
|||
|
pos1=0;
|
|||
|
pos2=0;
|
|||
|
z1=13;
|
|||
|
sp1=3;
|
|||
|
while(pos2!=-1)
|
|||
|
{
|
|||
|
instr(pos2,pos1,st_add_label,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(st_sub,st_add_label,pos1,pos2-pos1);
|
|||
|
else
|
|||
|
midstr(st_sub,st_add_label,pos1,laenge-pos1);
|
|||
|
INPAapiJob( sgbd,"STATUS_MESSWERTBLOCK_LESEN","JA;"+st_sub,"");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultText(s1,"STAT_"+st_sub+"_INFO",1,"");
|
|||
|
INPAapiResultText(s2,"STAT_"+st_sub+"_EINH",1,"");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_"+st_sub+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(s1+": "+text_var+" "+s2,z1,sp1,0,0);
|
|||
|
z1=z1+1;
|
|||
|
|
|||
|
pos1=pos2+1;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
if (Tastung == 0xFF)
|
|||
|
{
|
|||
|
textout(blank, 23,0);
|
|||
|
textout("Ansteuerung beendet",23,5);
|
|||
|
delay(1000);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
zeigebit(in: int pos1,in: long bitfolge,in: int zeile,in: int spalte) //Bitweise Ausgabe der LONG Variablen
|
|||
|
{
|
|||
|
long vergleich_var = 1;
|
|||
|
int i = 0;
|
|||
|
while(i < pos1)
|
|||
|
{
|
|||
|
|
|||
|
i = i+1;
|
|||
|
vergleich_var= vergleich_var * 2;
|
|||
|
}
|
|||
|
stelle = bitfolge & vergleich_var;
|
|||
|
if(stelle == 0)
|
|||
|
textout("0",zeile,spalte);
|
|||
|
else
|
|||
|
textout("1",zeile,spalte);
|
|||
|
}
|
|||
|
|
|||
|
//*************************
|
|||
|
//*** Ansteuerung GLF-1 ***
|
|||
|
//*************************
|
|||
|
glf1_ansteuer(in : int Tastung)
|
|||
|
{
|
|||
|
string s1, s2;
|
|||
|
int i_temp;
|
|||
|
|
|||
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_GLF","0;2","");
|
|||
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_GLF","1;2","");
|
|||
|
if (Tastung == 0xFE) INPAapiJob(sgbd,"STATUS_GLF","","");
|
|||
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_GLF","","");
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 != "OKAY") { messagebox("STEUERN_GLF",s1); stop(); }
|
|||
|
if (Tastung == 0xFE)
|
|||
|
{
|
|||
|
textout(blank,22,25);
|
|||
|
textout("Status Luftklappe", 20,25);
|
|||
|
INPAapiResultText(s1,"STAT_STAT_GLF_TEXT",1,"");
|
|||
|
text(22,25,s1);
|
|||
|
|
|||
|
}
|
|||
|
if (Tastung == 0xFF)
|
|||
|
{
|
|||
|
textout(blank, 26,0);
|
|||
|
textout("Ansteuerung K<>hlerjalousie oben beendet",26,25);
|
|||
|
delay(1000);
|
|||
|
textout(blank, 26,0);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
//*************************
|
|||
|
//*** Ansteuerung GLF-2 ***
|
|||
|
//*************************
|
|||
|
glf2_ansteuer(in : int Tastung)
|
|||
|
{
|
|||
|
string s1, s2;
|
|||
|
int i_temp;
|
|||
|
|
|||
|
if (Tastung == 0) INPAapiJob(sgbd,"STEUERN_GLF2","0","");
|
|||
|
if (Tastung == 1) INPAapiJob(sgbd,"STEUERN_GLF2","1","");
|
|||
|
if (Tastung == 0xFE) INPAapiJob(sgbd,"STATUS_GLF2","","");
|
|||
|
if (Tastung == 0xFF) INPAapiJob(sgbd,"STEUERN_ENDE_GLF2","","");
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 != "OKAY") { messagebox("STEUERN_GLF2",s1); stop(); }
|
|||
|
if (Tastung == 0xFE)
|
|||
|
{
|
|||
|
textout(blank,22,25);
|
|||
|
textout("Status Luftklappe", 20,25);
|
|||
|
INPAapiResultText(s1,"STAT_STAT_GLF2_TEXT",1,"");
|
|||
|
text(22,25,s1);
|
|||
|
|
|||
|
}
|
|||
|
if (Tastung == 0xFF)
|
|||
|
{
|
|||
|
textout(blank, 26,0);
|
|||
|
textout("Ansteuerung K<>hlerjalousie unten beendet",26,25);
|
|||
|
delay(1000);
|
|||
|
textout(blank, 26,0);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// ****************************************************
|
|||
|
// *** M e n <20> a u f b a u ***
|
|||
|
// ****************************************************
|
|||
|
// **************************
|
|||
|
// *** Statusmen<65> ***
|
|||
|
// **************************
|
|||
|
MENU m_status() {
|
|||
|
INIT {
|
|||
|
setmenutitle("Status lesen");
|
|||
|
}
|
|||
|
ITEM( 1 ,"Digital 1") {
|
|||
|
setscreen( s_digital1 ,TRUE);
|
|||
|
}
|
|||
|
//ITEM( 2 ,"Digital 2") { 27.7.07 keine Funktion
|
|||
|
// setscreen( s_digital2 ,TRUE);
|
|||
|
//}
|
|||
|
ITEM( 11 ,"AGR") {
|
|||
|
setscreen( s_digital_agr ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 12 ,"Readiness") {
|
|||
|
setscreen( s_digital_ready ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 3 ,"Analog 1") {
|
|||
|
setscreen( s_analog1 ,TRUE);
|
|||
|
}
|
|||
|
|
|||
|
ITEM( 13 ,"Analog 2") {
|
|||
|
setscreen( s_analog2 ,TRUE);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
ITEM( 4 ,"Mengenkorr.") {
|
|||
|
setscreen( s_analog_mk ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 14 ,"IGRInfo") {
|
|||
|
setscreen( s_igrinfo ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 5 ,"Drehungleichf.") {
|
|||
|
setscreen( s_analog3 ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 15 ,"SCR") {
|
|||
|
setscreen( s_status_scr ,TRUE);
|
|||
|
setmenu(m_status_scr);
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
ITEM( 6 ,"SOLL/IST") {
|
|||
|
setscreen( s_soll_ist ,TRUE);
|
|||
|
}
|
|||
|
|
|||
|
ITEM(16 ,"KAT /CSF") {
|
|||
|
setscreen( s_katcsf , TRUE);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
ITEM( 7 ,"PM - IBS") {
|
|||
|
setscreen( s_main_pm ,TRUE);
|
|||
|
setmenu(m_main_pm);
|
|||
|
}
|
|||
|
ITEM(17 ,"CBS") {
|
|||
|
setscreen( s_main_cbs ,TRUE);
|
|||
|
setmenu(m_main_cbs);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
ITEM( 8 ,"DDLI-Block") {
|
|||
|
setscreen(s_fdyn,TRUE);
|
|||
|
}
|
|||
|
ITEM(18 ,"Gesamt") {
|
|||
|
start();
|
|||
|
deselect();
|
|||
|
}
|
|||
|
ITEM( 9 ,"Druck") {
|
|||
|
printscreen();
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
ITEM( 10 ,"Zur<75>ck") {
|
|||
|
setscreen( s_main ,TRUE);
|
|||
|
setmenu( m_main );
|
|||
|
}
|
|||
|
ITEM( 20 ,"Exit") {
|
|||
|
exit();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
MENU m_status_scr() {
|
|||
|
INIT {
|
|||
|
setmenutitle("Status lesen");
|
|||
|
}
|
|||
|
|
|||
|
ITEM( 1 ,"Allgemein") {
|
|||
|
setscreen( s_status_scr_allg ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 2 ,"Abgas") {
|
|||
|
setscreen( s_status_scr_abgas ,TRUE);
|
|||
|
}
|
|||
|
ITEM( 3 ,"Tanksystem") {
|
|||
|
setscreen( s_status_scr_tank ,TRUE);
|
|||
|
}
|
|||
|
|
|||
|
ITEM( 9 ,"Druck") {
|
|||
|
printscreen();
|
|||
|
}
|
|||
|
ITEM( 10 ,"Zur<75>ck") {
|
|||
|
setscreen( s_status ,TRUE);
|
|||
|
setmenu( m_status );
|
|||
|
}
|
|||
|
ITEM( 4, "Speichern") {
|
|||
|
ende = 0;
|
|||
|
setscreen(s_savedata, TRUE);
|
|||
|
setmenu(m_savedata);
|
|||
|
}
|
|||
|
ITEM( 20 ,"Exit") {
|
|||
|
exit();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// **************************
|
|||
|
// *** Steuernmen<65> ***
|
|||
|
// **************************
|
|||
|
MENU m_steuern() {
|
|||
|
INIT {
|
|||
|
setmenutitle("Steuern");
|
|||
|
}
|
|||
|
ITEM( 1 ,"IMA") {
|
|||
|
setscreen( s_ima,TRUE);
|
|||
|
setmenu( m_ima);
|
|||
|
}
|
|||
|
ITEM( 2 ,"Steller") {
|
|||
|
setscreen( s_steller,TRUE);
|
|||
|
setmenu( m_steller);
|
|||
|
}
|
|||
|
ITEM( 3 ,"GLF") {
|
|||
|
setscreen( s_glf,TRUE);
|
|||
|
setmenu( m_glf);
|
|||
|
}
|
|||
|
|
|||
|
ITEM( 5 ,"Systemcheck") {
|
|||
|
setscreen( s_systemcheck,TRUE);
|
|||
|
setmenu( m_systemcheck );
|
|||
|
}
|
|||
|
ITEM( 6 ,"EWS") {
|
|||
|
setscreen( s_ews,TRUE);
|
|||
|
setmenu(m_ews);
|
|||
|
}
|
|||
|
ITEM( 7 ,"SCR") {
|
|||
|
setscreen( s_steller_scr,TRUE);
|
|||
|
setmenu( m_steller_scr );
|
|||
|
}
|
|||
|
ITEM( 8 ,"") {
|
|||
|
setscreen( s_steuern,TRUE);
|
|||
|
}
|
|||
|
ITEM( 9 ,"Druck") {
|
|||
|
printscreen();
|
|||
|
}
|
|||
|
ITEM( 10 ,"Zur<75>ck") {
|
|||
|
setscreen( s_main ,TRUE);
|
|||
|
setmenu( m_main );
|
|||
|
}
|
|||
|
ITEM( 20 ,"Exit") {
|
|||
|
exit();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
/*
|
|||
|
MENU m_scr() {
|
|||
|
INIT {
|
|||
|
setmenutitle("SCR");
|
|||
|
}
|
|||
|
ITEM( 1 ,"Status") {
|
|||
|
setscreen( s_status_scr,TRUE);
|
|||
|
setmenu( m_status_scr);
|
|||
|
}
|
|||
|
ITEM( 2 ,"Steller") {
|
|||
|
setscreen( s_steller_scr,TRUE);
|
|||
|
setmenu( m_steller_scr);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
ITEM( 5 ,"Systemcheck") {
|
|||
|
setscreen( s_systemcheck_scr,TRUE);
|
|||
|
setmenu( m_systemcheck_scr );
|
|||
|
}
|
|||
|
ITEM( 6 ,"") {
|
|||
|
setscreen( s_scr,TRUE);
|
|||
|
}
|
|||
|
|
|||
|
ITEM( 8 ,"") {
|
|||
|
setscreen( s_scr,TRUE);
|
|||
|
}
|
|||
|
ITEM( 9 ,"Druck") {
|
|||
|
printscreen();
|
|||
|
}
|
|||
|
ITEM( 10 ,"Zur<75>ck") {
|
|||
|
setscreen( s_steuern ,TRUE);
|
|||
|
setmenu( m_steuern );
|
|||
|
}
|
|||
|
ITEM( 20 ,"Exit") {
|
|||
|
exit();
|
|||
|
}
|
|||
|
}*/
|
|||
|
|
|||
|
MENU m_systemcheck() {
|
|||
|
INIT {
|
|||
|
setmenutitle("Systemchecks");
|
|||
|
}
|
|||
|
ITEM( 1 ,"LL-Erh") {
|
|||
|
setscreen( s_system_llerh,TRUE);
|
|||
|
setmenu( m_system_llerh);
|
|||
|
}
|
|||
|
ITEM( 2 ,"GLF") {
|
|||
|
setscreen( s_systemtest_glf,TRUE);
|
|||
|
setmenu( m_systemtest_glf);
|
|||
|
}
|
|||
|
ITEM( 3 ,"IGR_AUS") {
|
|||
|
setscreen( s_systemtest_igr,TRUE);
|
|||
|
setmenu( m_systemtest_igr);
|
|||
|
}
|
|||
|
ITEM( 9 ,"Druck") {
|
|||
|
printscreen();
|
|||
|
}
|
|||
|
ITEM( 10 ,"Zur<75>ck") {
|
|||
|
setscreen( s_steuern ,TRUE);
|
|||
|
setmenu( m_steuern );
|
|||
|
}
|
|||
|
ITEM( 20 ,"Exit") {
|
|||
|
exit();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// ****************************
|
|||
|
// *** IMA Men<65> ***
|
|||
|
// ****************************
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
MENU m_ima()
|
|||
|
|
|||
|
{
|
|||
|
string tmpTxt;
|
|||
|
|
|||
|
INIT {
|
|||
|
setmenutitle("Injektor Mengenabgleich anpassen");
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
//Definition Icon 1
|
|||
|
ITEM( 1 ,"IMA alle") {
|
|||
|
//<2F>ffnen einer Eingabebox
|
|||
|
inputtext(tmpTxt,"IMA Werte alle Zylinder","Eingabeformat Bsp.: 0A314370;N43143LD;H531AI70;0G31ZY70");
|
|||
|
|
|||
|
|
|||
|
//Ausf<73>hren des Jobs
|
|||
|
|
|||
|
INPAapiJob(sgbd,"ABGLEICH_PROGRAMMIEREN_IMA",tmpTxt,"");
|
|||
|
INPAapiResultText(text_var,"JOB_STATUS",1,"");
|
|||
|
if( text_var != "OKAY")
|
|||
|
{
|
|||
|
messagebox("IMA Abgleich programmieren","Fehler bei der Eingabe");
|
|||
|
setscreen(s_ima, TRUE);
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
messagebox("IMA Abgleich programmieren",tmpTxt +" Wert programmiert!");
|
|||
|
setscreen(s_ima, TRUE);
|
|||
|
}
|
|||
|
delay(1000);
|
|||
|
setscreen(s_ima,TRUE);
|
|||
|
setmenu( m_ima);
|
|||
|
}
|
|||
|
|
|||
|
ITEM( 3 ,"IMA einzeln") {
|
|||
|
//<2F>ffnen einer Eingabebox
|
|||
|
inputtext(tmpTxt,"IMA Werte <20>ndern pro Zyl","Eingabeformat Bsp.: ima1;0A314370");
|
|||
|
|
|||
|
|
|||
|
//Ausf<73>hren des Jobs
|
|||
|
|
|||
|
INPAapiJob(sgbd,"ABGLEICH_PROGRAMMIEREN_IMA_ZYL",tmpTxt,"");
|
|||
|
INPAapiResultText(text_var,"JOB_STATUS",1,"");
|
|||
|
if( text_var != "OKAY")
|
|||
|
{
|
|||
|
messagebox("IMA Abgleich programmieren","Fehler bei der Eingabe");
|
|||
|
setscreen(s_ima, TRUE);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
messagebox("IMA Abgleich programmieren",tmpTxt +" Wert programmiert!");
|
|||
|
setscreen(s_ima, TRUE);
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM( 9 ,"Druck") {
|
|||
|
printscreen();
|
|||
|
}
|
|||
|
|
|||
|
ITEM( 10 ,"Zur<75>ck") {
|
|||
|
setscreen(s_main,TRUE);
|
|||
|
setmenu( m_main );
|
|||
|
}
|
|||
|
|
|||
|
ITEM( 20 ,"Exit") {
|
|||
|
// Programmabbruch
|
|||
|
exit();
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
// **************************************
|
|||
|
// *** Menue fuer IBS Powermanagement ***
|
|||
|
// **************************************
|
|||
|
MENU m_main_pm()
|
|||
|
{
|
|||
|
INIT
|
|||
|
{
|
|||
|
setmenutitle("Powermanagement");
|
|||
|
}
|
|||
|
|
|||
|
ITEM(1,"IDENT") { setscreen(s_ibs_ident,TRUE); }
|
|||
|
ITEM(2,"PM Feld 1") { setscreen(s_pm_feld1,TRUE); }
|
|||
|
ITEM(3,"PM Feld 2") { setscreen(s_pm_feld2,TRUE); }
|
|||
|
ITEM(4,"PM Feld 3") { setscreen(s_pm_feld3,TRUE); }
|
|||
|
ITEM(5,"B Tausch")
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"STEUERN_BATTERIETAUSCH_REGISTRIEREN","","");
|
|||
|
INPAapiResultText(text_var, "JOB_STATUS", 1,"");
|
|||
|
delay (20);
|
|||
|
if (text_var == "OKAY") { messagebox("Batterietausch B_fabttreg",text_var); }
|
|||
|
else { messagebox("Batterietausch B_fabttreg",text_var); stop(); }
|
|||
|
}
|
|||
|
|
|||
|
ITEM(6,"Reset")
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"STEUERN_PM_HISTOGRAM_RESET","","");
|
|||
|
INPAapiResultText(text_var, "JOB_STATUS", 1,"");
|
|||
|
delay (20);
|
|||
|
if (text_var == "OKAY") { messagebox("PM_HISTOGRAM_RESET",text_var); }
|
|||
|
else { messagebox("PM_HISTOGRAM_RESET",text_var); stop(); }
|
|||
|
}
|
|||
|
|
|||
|
ITEM(7,"Start")
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_PM_MESSEMODE","","");
|
|||
|
INPAapiResultText(text_var, "JOB_STATUS", 1,"");
|
|||
|
delay (20);
|
|||
|
if (text_var == "OKAY") { messagebox("Start PM_MESSEMODE",text_var); }
|
|||
|
else { messagebox("Start PM_MESSEMODE",text_var); stop(); }
|
|||
|
}
|
|||
|
|
|||
|
ITEM(8,"Stop")
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"STOP_SYSTEMCHECK_PM_MESSEMODE","","");
|
|||
|
INPAapiResultText(text_var, "JOB_STATUS", 1,"");
|
|||
|
delay (20);
|
|||
|
if (text_var == "OKAY") { messagebox("Stop PM_MESSEMODE",text_var); }
|
|||
|
else { messagebox("Stop PM_MESSEMODE",text_var); stop(); }
|
|||
|
}
|
|||
|
|
|||
|
ITEM(10,"Zur<75>ck")
|
|||
|
{
|
|||
|
blankscreen();
|
|||
|
setscreen(s_status,TRUE);
|
|||
|
setmenu(m_status);
|
|||
|
}
|
|||
|
|
|||
|
ITEM(11,"IBS R<>ck")
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"LERNWERTE_RUECKSETZEN","IBSRE","");
|
|||
|
INPAapiResultText(text_var, "JOB_STATUS", 1,"");
|
|||
|
delay (20);
|
|||
|
if (text_var == "OKAY") { messagebox("IBS Erkennung R<>cksetzen",text_var); }
|
|||
|
else { messagebox("IBS Erkennung R<>cksetzen",text_var); stop(); }
|
|||
|
}
|
|||
|
|
|||
|
ITEM(20 ,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|||
|
}
|
|||
|
|
|||
|
// **************************************
|
|||
|
// *** Menue fuer CBS***
|
|||
|
// **************************************
|
|||
|
MENU m_main_cbs()
|
|||
|
{
|
|||
|
INIT
|
|||
|
{
|
|||
|
setmenutitle("Men<65>");
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
ITEM(10,"Zur<75>ck")
|
|||
|
{
|
|||
|
blankscreen();
|
|||
|
setscreen(s_status,TRUE);
|
|||
|
setmenu(m_status);
|
|||
|
}
|
|||
|
ITEM(20 ,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|||
|
}
|
|||
|
|
|||
|
// **********************************
|
|||
|
// *** Steuern Steller Men<65> ***
|
|||
|
// **********************************
|
|||
|
|
|||
|
MENU m_steller()
|
|||
|
{
|
|||
|
|
|||
|
INIT {setmenutitle("DDE7 Stellgliedansteuerungen");}
|
|||
|
ITEM(1, "DK") {steller="DRO"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(2, "E-L<>fter") {steller="ELU"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(3, "GLU") {steller="GLU"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(4, "MLA") {steller="MLA"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(5, "DRV") {steller="DRV"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(6, "LDS") {steller="LDS"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(7, "DRA") {steller="DRA"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(8, "MRV") {steller="MRV"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(9, "AGR") {steller="AGR"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(10,"Zur<75>ck") {blankscreen(); setscreen(s_steuern,TRUE); setmenu(m_steuern);}
|
|||
|
ITEM(11,"MIL") {steller="MILA"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(12,"OILA") {steller="OILA"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(13,"NSK") {steller="NSK"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(14,"EBL") {steller="EBX"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(15,"KLI") {steller="KLI"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(16,"KPC") {steller="KPC"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(17,"VFP") {steller="VFP"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(18,"ZLK") {steller="ZLK"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(19,"ZUH") {steller="ZUH"; setscreen(s_steller_set,TRUE); setmenu(m_steller_set);}
|
|||
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|||
|
}
|
|||
|
|
|||
|
MENU m_steller_scr()
|
|||
|
{
|
|||
|
|
|||
|
|
|||
|
INIT {setmenutitle("DDE7 Stellgliedansteuerungen");}
|
|||
|
ITEM(1, "UA") {steller="UASCR"; setscreen(s_steller_scr_set,TRUE); setmenu(m_steller_scr_set);}
|
|||
|
ITEM(2, "PA") {steller="PASCR"; setscreen(s_steller_scr_set,TRUE); setmenu(m_steller_scr_set);}
|
|||
|
ITEM(3, "PP") {steller="PPSCR"; setscreen(s_steller_scr_set,TRUE); setmenu(m_steller_scr_set);}
|
|||
|
ITEM(4, "DV") {steller="DVSCR"; setscreen(s_steller_scr_set,TRUE); setmenu(m_steller_scr_set);}
|
|||
|
//ITEM(5, "HKHR") {steller="HKHR"; setscreen(s_steller_scr_set,TRUE); setmenu(m_steller_scr_set);}
|
|||
|
ITEM(5, "HKDL") {steller="HKDL"; setscreen(s_steller_scr_set,TRUE); setmenu(m_steller_scr_set);}
|
|||
|
ITEM(6, "HKT") {steller="HKT"; setscreen(s_steller_scr_set,TRUE); setmenu(m_steller_scr_set);}
|
|||
|
|
|||
|
ITEM(10,"Zur<75>ck") {blankscreen(); setscreen(s_steuern,TRUE); setmenu(m_steuern);}
|
|||
|
|
|||
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|||
|
}
|
|||
|
|
|||
|
//**************************************
|
|||
|
//*** Men<65> Ansteuerung Steller allg. ***
|
|||
|
//**************************************
|
|||
|
MENU m_steller_set()
|
|||
|
{
|
|||
|
int eingabe=0;
|
|||
|
INIT {setmenutitle("Ansteuerung");}
|
|||
|
ITEM( 1,"EIN") {steller_ansteuer(steller,st_ein);}
|
|||
|
ITEM( 2,"AUS") {steller_ansteuer(steller,st_aus);}
|
|||
|
ITEM( 3,"Eingabe")
|
|||
|
{
|
|||
|
inputint(eingabe,"Eingabe","Wert: ["+st_dim+"]",st_aus,st_ein);
|
|||
|
inputstate=99;
|
|||
|
getinputstate(inputstate);
|
|||
|
if(inputstate==0) steller_ansteuer(steller,eingabe);
|
|||
|
}
|
|||
|
|
|||
|
ITEM( 4,"DDE") {steller_ansteuer(steller,0xFF);}
|
|||
|
ITEM(10,"Zur<75>ck") {setscreen(s_steller,TRUE); setmenu(m_steller);}
|
|||
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|||
|
}
|
|||
|
|
|||
|
MENU m_steller_scr_set()
|
|||
|
{
|
|||
|
int eingabe=0;
|
|||
|
INIT {setmenutitle("Ansteuerung");}
|
|||
|
ITEM( 1,"EIN") {steller_ansteuer(steller,st_ein);}
|
|||
|
ITEM( 2,"AUS") {steller_ansteuer(steller,st_aus);}
|
|||
|
ITEM( 3,"Eingabe")
|
|||
|
{
|
|||
|
inputint(eingabe,"Eingabe","Wert: ["+st_dim+"]",st_aus,st_ein);
|
|||
|
inputstate=99;
|
|||
|
getinputstate(inputstate);
|
|||
|
if(inputstate==0) steller_ansteuer(steller,eingabe);
|
|||
|
}
|
|||
|
ITEM( 4,"DDE") {steller_ansteuer(steller,0xFF);}
|
|||
|
ITEM(10,"Zur<75>ck") {setscreen(s_steller_scr,TRUE); setmenu(m_steller_scr);}
|
|||
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|||
|
}
|
|||
|
|
|||
|
// *********************************
|
|||
|
// *** Men<65> f<>r LL-Erh<72>hung ***
|
|||
|
// *********************************
|
|||
|
MENU m_system_llerh()
|
|||
|
{
|
|||
|
int ll_help;
|
|||
|
|
|||
|
INIT
|
|||
|
{
|
|||
|
setmenutitle("EOL - LeerLauf");
|
|||
|
taste = 0;
|
|||
|
}
|
|||
|
ITEM(1,"+10")
|
|||
|
{
|
|||
|
llerh(10);
|
|||
|
setscreen(s_system_llerh,TRUE);
|
|||
|
taste = 1;
|
|||
|
}
|
|||
|
ITEM(2,"-10")
|
|||
|
{
|
|||
|
llerh(-10);
|
|||
|
setscreen(s_system_llerh,TRUE);
|
|||
|
taste = 1;
|
|||
|
}
|
|||
|
ITEM(3,"+100")
|
|||
|
{
|
|||
|
llerh(100);
|
|||
|
setscreen(s_system_llerh,TRUE);
|
|||
|
taste = 1;
|
|||
|
}
|
|||
|
ITEM(4,"-100")
|
|||
|
{
|
|||
|
llerh(-100);
|
|||
|
setscreen(s_system_llerh,TRUE);
|
|||
|
taste = 1;
|
|||
|
}
|
|||
|
ITEM(6,"Ausw")
|
|||
|
{
|
|||
|
inputstate = 2;
|
|||
|
while (inputstate != 0)
|
|||
|
{
|
|||
|
ll_help = ll_wert;
|
|||
|
if ((Diag_Index=="18")||(Diag_Index=="33")||(Diag_Index=="49"))
|
|||
|
{
|
|||
|
inputint(ll_help,"Vorgabe LL-Sollwert", "Absolutdrehzahl in den Grenzen von 650 < N < 3000",650,3000);
|
|||
|
getinputstate(inputstate);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
inputint(ll_help,"Vorgabe LL-Sollwert", "Drehzahloffset in den Grenzen von -150 < N < 1200",-150,1199);
|
|||
|
getinputstate(inputstate);
|
|||
|
}
|
|||
|
}
|
|||
|
if (inputstate == 0)
|
|||
|
{
|
|||
|
ll_help = ll_help - ll_wert;
|
|||
|
llerh(ll_help);
|
|||
|
blankscreen();
|
|||
|
setscreen(s_system_llerh,TRUE);
|
|||
|
taste = 1;
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM(9,"STOP")
|
|||
|
{
|
|||
|
setscreen(s_system_llerh_stop,TRUE);
|
|||
|
}
|
|||
|
ITEM(10,"Zur<75>ck") {blankscreen(); setscreen(s_systemcheck,TRUE); setmenu(m_systemcheck);}
|
|||
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
// *******************************
|
|||
|
// *** Men<65> Systemdiagnose GLF ***
|
|||
|
// *******************************
|
|||
|
MENU m_systemtest_glf()
|
|||
|
{
|
|||
|
string s1;
|
|||
|
|
|||
|
INIT
|
|||
|
{
|
|||
|
setmenutitle("Systemdiagnose GLF");
|
|||
|
}
|
|||
|
ITEM(1,"START")
|
|||
|
{
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_GLF","","");
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 == "OKAY")
|
|||
|
{
|
|||
|
setscreen(s_systemtest_glf,TRUE);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
messagebox("START_SYSTEMCHECK_GLF",s1);
|
|||
|
stop();
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM(2,"STOP")
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"STOP_SYSTEMCHECK_GLF","","");
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 == "OKAY")
|
|||
|
{
|
|||
|
setscreen(s_systemtest_glf,TRUE);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
messagebox("STOP_SYSTEMCHECK_GLF",s1);
|
|||
|
stop();
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM(10,"Zur<75>ck")
|
|||
|
{
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
blankscreen();
|
|||
|
setscreen(s_systemcheck,TRUE);
|
|||
|
setmenu(m_systemcheck);
|
|||
|
}
|
|||
|
ITEM(20,"ENDE") { userboxclose(0); viewclose(); exit();}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// ****************************
|
|||
|
// *** Men<65> Systemcheck IGR ***
|
|||
|
// ****************************
|
|||
|
MENU m_systemtest_igr()
|
|||
|
{
|
|||
|
string s1;
|
|||
|
|
|||
|
INIT
|
|||
|
{
|
|||
|
setmenutitle("Systemcheck IGR");
|
|||
|
}
|
|||
|
ITEM(1,"START")
|
|||
|
{
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_IGR_AUS","","");
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 == "OKAY")
|
|||
|
{
|
|||
|
setscreen(s_systemtest_igr,TRUE);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
messagebox("START_SYSTEMCHECK_IGR_AUS",s1);
|
|||
|
stop();
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM(2,"STOP")
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"STOP_SYSTEMCHECK_IGR_AUS","","");
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 == "OKAY")
|
|||
|
{
|
|||
|
setscreen(s_systemtest_igr,TRUE);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
messagebox("STOP_SYSTEMCHECK_IGR",s1);
|
|||
|
stop();
|
|||
|
}
|
|||
|
}
|
|||
|
ITEM(10,"Zur<75>ck")
|
|||
|
{
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
blankscreen();
|
|||
|
setscreen(s_systemcheck,TRUE);
|
|||
|
setmenu(m_systemcheck);
|
|||
|
}
|
|||
|
ITEM(20,"ENDE") { userboxclose(0); viewclose(); exit();}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// ****************************
|
|||
|
// *** EWS 4-Men<65> ***
|
|||
|
// ****************************
|
|||
|
MENU m_ews()
|
|||
|
{
|
|||
|
string eingabe;
|
|||
|
INIT { setmenutitle("EWS4"); }
|
|||
|
|
|||
|
ITEM(1,"Status") { setscreen(s_ews_status,TRUE); }
|
|||
|
|
|||
|
ITEM(2,"StatusSK") { setscreen(s_ews_status_sk,TRUE); }
|
|||
|
|
|||
|
/*ITEM(3,"Data") {
|
|||
|
input_state=99;
|
|||
|
inputtext(eingabe,"EWS4 Data","Eingabe: MODE;DATEN");
|
|||
|
getinputstate(input_state);
|
|||
|
if (input_state==0)
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"STEUERN_EWS4_SK",eingabe,"");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
}
|
|||
|
|
|||
|
}*/
|
|||
|
|
|||
|
|
|||
|
ITEM( 9 ,"Druck") {
|
|||
|
printscreen();
|
|||
|
}
|
|||
|
ITEM( 10 ,"Zur<75>ck") {
|
|||
|
setscreen(s_steuern,TRUE);
|
|||
|
setmenu( m_steuern );
|
|||
|
}
|
|||
|
ITEM( 20 ,"Exit") {
|
|||
|
// Programmabbruch
|
|||
|
exit();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
//****************************
|
|||
|
//*** Men<65> Ansteuerung GLF ***
|
|||
|
//****************************
|
|||
|
MENU m_glf()
|
|||
|
{
|
|||
|
INIT {setmenutitle("Ansteuerung gesteuerte Luftf<74>hrung GLF"); ftextout("Setzen der Ansteuerung <20>ber I/O Status",3,3,0,3);}
|
|||
|
ITEM( 1,"Oben ZU") {glf1_ansteuer(0);}
|
|||
|
ITEM( 2,"Oben AUF") {glf1_ansteuer(1);}
|
|||
|
/* ITEM( 3,"Unten ZU") {glf2_ansteuer(0);}
|
|||
|
ITEM( 4,"Unten AUF"){glf2_ansteuer(1);} */
|
|||
|
ITEM( 5,"DME") {glf1_ansteuer(0xFF);glf2_ansteuer(0xFF);}
|
|||
|
ITEM(10,"Zur<75>ck") {setscreen(s_steuern,TRUE); setmenu(m_steuern);}
|
|||
|
ITEM(20,"ENDE") {userboxclose(0); viewclose(); exit();}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
//*********************************
|
|||
|
//*** Men<65> Messdatenspeicherung ***
|
|||
|
//*********************************
|
|||
|
MENU m_savedata()
|
|||
|
{
|
|||
|
INIT{setmenutitle("Messdatenspeicherung"); }
|
|||
|
ITEM( 10 ,"Zur<75>ck") {
|
|||
|
setscreen(s_status_scr,TRUE);
|
|||
|
setmenu( m_status_scr );
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// ****************************************************
|
|||
|
// *** S c r e e n a u f b a u ***
|
|||
|
// ****************************************************
|
|||
|
// **************************
|
|||
|
// *** Statusscreen ***
|
|||
|
// **************************
|
|||
|
SCREEN s_status() {
|
|||
|
ftextout("Status lesen",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
LINE("","") {
|
|||
|
ftextout("< F1 > Digitalwerte 1 ", 4,5,0,1);
|
|||
|
|
|||
|
//ftextout("< F2 > Digitalwerte 2", 6,5,0,1);
|
|||
|
ftextout("< F3 > Analogwerte 1", 8,5,0,1);
|
|||
|
ftextout("< F4 > Selektive Mengenkorrektur-Motor erst starten!" ,10,5,0,1);
|
|||
|
ftextout("< F5 > Selektive Drehungleichf<68>rmigkeit-Motor erst starten!", 12,5,0,1);
|
|||
|
ftextout("< F6 > SOLL/IST", 14,5,0,1);
|
|||
|
ftextout("< F7 > Powermanagement IBS" ,16,5,0,1);
|
|||
|
ftextout("< F8 > DDLI Block lesen" ,18,5,0,1);
|
|||
|
ftextout("< F9 > Bildschirmdruck" ,20,5,0,1);
|
|||
|
ftextout("< F10> Ende" ,22,5,0,1);
|
|||
|
|
|||
|
ftextout("<Shift> + < F1 > Digitalwerte AGR ", 4,45,0,1);
|
|||
|
ftextout("<Shift> + < F2 > Digitalwerte Readiness", 6,45,0,1);
|
|||
|
ftextout("<Shift> + < F3 > Analogwerte 2" ,8,45,0,1);
|
|||
|
ftextout("<Shift> + < F4 > IGR Info" ,10,45,0,1);
|
|||
|
ftextout("<Shift> + < F5 > SCR" ,12,45,0,1);
|
|||
|
ftextout("<Shift> + < F6 > Werte KAT / CSF" ,14,45,0,1);
|
|||
|
ftextout("<Shift> + < F7 > CBS-Daten" ,16,45,0,1);
|
|||
|
ftextout("<Shift> + < F8 > Gesamt" ,18,45,0,1);
|
|||
|
ftextout("<Shift> + < F10> Exit" ,22,45,0,1);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
// **************************
|
|||
|
// *** Steuernscreen ***
|
|||
|
// **************************
|
|||
|
SCREEN s_steuern() {
|
|||
|
ftextout("Ansteuern",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
LINE("","") {
|
|||
|
ftextout("< F1 > IMA Abgleich" ,4,5,0,1);
|
|||
|
ftextout("< F2 > Steuern 1" ,6,5,0,1);
|
|||
|
ftextout("< F3 > gesteuerte Luftf<74>hrung" ,8,5,0,1);
|
|||
|
|
|||
|
ftextout("< F5 > Systemchecks" ,12,5,0,1);
|
|||
|
|
|||
|
ftextout("< F6 > EWS" ,14,5,0,1);
|
|||
|
|
|||
|
ftextout("< F7 > SCR" ,16,5,0,1);
|
|||
|
|
|||
|
ftextout("< F9 > Bildschirmdruck" ,20,5,0,1);
|
|||
|
ftextout("< F10> Zur<75>ck" ,22,5,0,1);
|
|||
|
ftextout("<Shift> + < F10> Exit" ,22,45,0,1);
|
|||
|
}
|
|||
|
}
|
|||
|
/*
|
|||
|
SCREEN s_scr() {
|
|||
|
ftextout("SCR Umf<6D>nge",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
LINE("","") {
|
|||
|
ftextout("< F1 > Status lesen" ,4,5,0,1);
|
|||
|
ftextout("< F2 > Steuern" ,6,5,0,1);
|
|||
|
|
|||
|
|
|||
|
//ftextout("< F5 > Systemchecks" ,12,5,0,1);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
ftextout("< F9 > Bildschirmdruck" ,20,5,0,1);
|
|||
|
ftextout("< F10> Zur<75>ck" ,22,5,0,1);
|
|||
|
ftextout("<Shift> + < F10> Exit" ,22,45,0,1);
|
|||
|
}
|
|||
|
}
|
|||
|
*/
|
|||
|
SCREEN s_systemcheck() {
|
|||
|
ftextout("Systemchecks",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
LINE("","") {
|
|||
|
ftextout("< F1 > Leerlauferh<72>hung" ,4,5,0,1);
|
|||
|
ftextout("< F2 > GLF" ,6,5,0,1);
|
|||
|
ftextout("< F3 > IGR" ,8,5,0,1);
|
|||
|
ftextout("< F9 > Bildschirmdruck" ,20,5,0,1);
|
|||
|
ftextout("< F10> Zur<75>ck" ,22,5,0,1);
|
|||
|
ftextout("<Shift> + < F10> Exit" ,22,45,0,1);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
// ***************************
|
|||
|
// *** Digital1-Screen ***
|
|||
|
// ***************************
|
|||
|
SCREEN s_digital1() {
|
|||
|
ftextout("Digitalwerte 1",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
INPAapiJob(sgbd,"STATUS_DIGITAL","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
|
|||
|
LINE("Bremslichtschalter Bremslichttestschalter","") {
|
|||
|
// Bremslichtschalter
|
|||
|
text(1,1,"Status Bremslichtschalter");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_BLS_EIN",1);
|
|||
|
digitalout(logik_var, 3,1,"ein ","aus ");
|
|||
|
|
|||
|
// Bremslichttestschalter
|
|||
|
text(1,35,"Status Bremslichttestschalter");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_BLTS_EIN",1);
|
|||
|
digitalout(logik_var, 3,35,"ein ","aus ");
|
|||
|
}
|
|||
|
LINE("Klimaschalter Klimakompressor","") {
|
|||
|
// Klimaschalter
|
|||
|
text(1,1,"Status Klimaschalter");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AC_EIN",1);
|
|||
|
digitalout(logik_var, 3,1,"ein ","aus ");
|
|||
|
|
|||
|
|
|||
|
|
|||
|
/* nur AC Signal bei der DDE6!
|
|||
|
// Klimakompressor
|
|||
|
text(1,35,"Status Klimakompressor");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_KO_EIN",1);
|
|||
|
digitalout(logik_var, 3,35,"ein ","aus ");
|
|||
|
*/
|
|||
|
}
|
|||
|
LINE("Kupplungsschalter Oeldruckschalter","") {
|
|||
|
// Kupplungsschalter
|
|||
|
text(1,1,"Status Kupplungsschalter");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_KUP_EIN",1);
|
|||
|
digitalout(logik_var, 3,1,"ein ","aus ");
|
|||
|
|
|||
|
// Oeldruckschalter
|
|||
|
text(1,35,"Status Oeldruckschalter");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_ODS_EIN",1);
|
|||
|
digitalout(logik_var, 3,35,"ein ","aus ");
|
|||
|
}
|
|||
|
LINE("Getriebeart","") {
|
|||
|
// Getriebeart
|
|||
|
text(1,1,"Status Getriebeart");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_GETRIEBEART_HAND_EIN",1);
|
|||
|
digitalout(logik_var, 3,1,"AUTO. ","HAND ");
|
|||
|
|
|||
|
/* // EWS-Abgleich
|
|||
|
text(1,35,"Status EWS-Abgleich");
|
|||
|
INPAapiJob(sgbd,"EWS_EMPFANG","0","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultDigital(logik_var,"EWS_STATUS_VALUE",0);
|
|||
|
digitalout(logik_var, 3,35,"OK ","NICHT-OK ");
|
|||
|
*/
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
/*K<>hlwasserheizung <20>ber Motorsteuerger<65>t nicht ein-, auschalt- und abfragbar <20>ber DDE! (PTC ist nicht vorhanden)
|
|||
|
LINE("Kuehlwasserheizung","") {
|
|||
|
// Kuehlwasserheizung
|
|||
|
text(1,1,"Status Kuehlwasserheizung");
|
|||
|
INPAapiJob(sgbd,"STATUS_DIGITAL","dig_kwh_aus","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultDigital(logik_var,"?",1);
|
|||
|
digitalout(logik_var, 3,1,"ein ","aus ");
|
|||
|
|
|||
|
}
|
|||
|
*/
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// ***************************
|
|||
|
// *** Digital2-Screen ***
|
|||
|
// ***************************
|
|||
|
SCREEN s_digital2() {
|
|||
|
ftextout("Digitalwerte 2",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
INPAapiJob(sgbd,"STATUS_DIGITAL","dig_mfl","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
// FGR Bedienteil Taste +
|
|||
|
text(1,1,"Status FGR Bedienteil Taste + ");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_MFLEINP_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"ein ","aus ");
|
|||
|
|
|||
|
// FGR Bedienteil Taste -
|
|||
|
text(1,40,"Status FGR Bedienteil Taste - ");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_MFLEINM_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"ein ","aus ");
|
|||
|
}
|
|||
|
LINE("","") {
|
|||
|
// FGR Bedienteil Taste Wiederaufnahme
|
|||
|
text(1,1,"Status FGR Bedienteil Taste Wiederaufnahme ");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_MFLWA_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"ein ","aus ");
|
|||
|
|
|||
|
// FGR Bedienteil Taste AUS
|
|||
|
text(1,40,"Status FGR Bedienteil Taste AUS ");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_MFLAUS_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"ein ","aus ");
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
// FGR Bedienteil Taste +<2B>berdr<64>cken
|
|||
|
text(1,1,"Status FGR Bedienteil Beschleunigung ");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_MFLACCL_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"ein ","aus ");
|
|||
|
|
|||
|
// FGR Bedienteil Taste AUS
|
|||
|
text(1,40,"Status FGR Bedienteil Verz<72>gerung ");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_MFLDECL_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"ein ","aus ");
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// ***************************
|
|||
|
// *** DigitalAGR-Screen ***
|
|||
|
// ***************************
|
|||
|
SCREEN s_digital_agr() {
|
|||
|
ftextout("AGR Abschaltung",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
INPAapiJob(sgbd,"STATUS_DIGITAL","dig_agr_aus","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
text(1,1,"keine Abschaltung");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_UKN_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"aktiv ","nicht aktiv ");
|
|||
|
|
|||
|
text(1,40,"Schubbetrieb");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_SUB_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"aktiv ","nicht aktiv ");
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
text(1,1,"Schaltvorgang");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_SAL_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"aktiv ","nicht aktiv ");
|
|||
|
|
|||
|
text(1,40,"langer Leerlauf");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_LL_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"aktiv ","nicht aktiv ");
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
text(1,1,"bleibende Regelabweichung");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_RA_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"aktiv ","nicht aktiv ");
|
|||
|
|
|||
|
text(1,40,"Systemfehler");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_SYS_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"aktiv ","nicht aktiv ");
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
text(1,1,"zu niedriger Atmosph<70>rendruck");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_PUMGMIN_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"aktiv ","nicht aktiv ");
|
|||
|
|
|||
|
text(1,40,"zu niedrige Batteriespannung");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_UBATTMIN_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"aktiv ","nicht aktiv ");
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
text(1,1,"bleibende Regelabweichung");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_RA_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"aktiv ","nicht aktiv ");
|
|||
|
|
|||
|
text(1,40,"gro<72>e Einspritzmenge");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_QINJMAX_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"aktiv ","nicht aktiv ");
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
|
|||
|
text(1,1,"zu hohe Lufttemperatur");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_TUMGMAX_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"aktiv ","nicht aktiv ");
|
|||
|
text(1,40,"zu niedrige Lufttemperatur");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_TUMGMIN_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"aktiv ","nicht aktiv ");
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
text(1,1,"Kaltstart");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_KALT_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"aktiv ","nicht aktiv ");
|
|||
|
|
|||
|
text(1,40,"Abschaltkoordinationsanforderung");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_ABSCHKOORD_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"aktiv ","nicht aktiv ");
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
text(1,1,"zu hohe K<>hlwassertemperatur");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_TMOTMAX_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"aktiv ","nicht aktiv ");
|
|||
|
|
|||
|
text(1,40,"zu niedrige K<>hlWassertemperatur");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_TMOTMIN_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"aktiv ","nicht aktiv ");
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
text(1,1,"HFM Drift Kompensation");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_DRFTKOMP_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"aktiv ","nicht aktiv ");
|
|||
|
|
|||
|
text(1,40,"Antisurge");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_AGR_ASRG_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"aktiv ","nicht aktiv ");
|
|||
|
}
|
|||
|
}
|
|||
|
// ****************************
|
|||
|
// *** Readiness-Screen ***
|
|||
|
// ****************************
|
|||
|
SCREEN s_digital_ready() {
|
|||
|
ftextout("Readiness",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
INPAapiJob(sgbd,"STATUS_DIGITAL","dig_readiness","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
text(1,1,"<22>berwachung Z<>ndaussetzer");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_SUPMISFIRE_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"unterst<73>tzt ","nicht unterst<73>tzt ");
|
|||
|
|
|||
|
if(logik_var)
|
|||
|
{
|
|||
|
text(1,40,"Status <20>berwachung Z<>ndaussetzer");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_STATMISFIRE_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"bereit ","nicht bereit ");
|
|||
|
}
|
|||
|
}
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
text(1,1,"<22>berwachung Kraftstoffsystem");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_SUPFUELSYS_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"unterst<73>tzt ","nicht unterst<73>tzt ");
|
|||
|
|
|||
|
if(logik_var)
|
|||
|
{
|
|||
|
text(1,40,"Status <20>berwachung Kraftstoffsystem");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_STATFUELSYS_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"bereit ","nicht bereit ");
|
|||
|
}
|
|||
|
}
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
text(1,1,"<22>bergreifende Komponenten<65>berwachung");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_SUPCOMPRCOMP_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"unterst<73>tzt ","nicht unterst<73>tzt ");
|
|||
|
|
|||
|
if(logik_var)
|
|||
|
{
|
|||
|
text(1,40,"Status <20>bergreifende Komponenten<65>berwachung");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_STATCOMPRCOMP_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"bereit ","nicht bereit ");
|
|||
|
}
|
|||
|
}
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
text(1,1,"<22>berwachung Katalysator");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_SUPCATALYST_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"unterst<73>tzt ","nicht unterst<73>tzt ");
|
|||
|
|
|||
|
if(logik_var)
|
|||
|
{
|
|||
|
text(1,40,"Status <20>berwachung Katalysator");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_STATCATALYST_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"bereit ","nicht bereit ");
|
|||
|
}
|
|||
|
}
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
text(1,1,"<22>berwachung Lambdasonde");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_SUPOXYSENS_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"unterst<73>tzt ","nicht unterst<73>tzt ");
|
|||
|
|
|||
|
if(logik_var)
|
|||
|
{
|
|||
|
text(1,40,"Status <20>berwachung Lambdasonde");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_STATOXYSENS_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"bereit ","nicht bereit ");
|
|||
|
}
|
|||
|
}
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
text(1,1,"<22>berwachung Lambdasondenheizung");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_SUPOXYHEAT_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"unterst<73>tzt ","nicht unterst<73>tzt ");
|
|||
|
|
|||
|
if(logik_var)
|
|||
|
{
|
|||
|
text(1,40,"Status <20>berwachung Lambdasondenheizung");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_STATOXYHEAT_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"bereit ","nicht bereit ");
|
|||
|
}
|
|||
|
}
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
text(1,1,"<22>berwachung EGR-System");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_SUPEGRSYS_WERT",1);
|
|||
|
digitalout(logik_var, 3,1,"unterst<73>tzt ","nicht unterst<73>tzt ");
|
|||
|
|
|||
|
if(logik_var)
|
|||
|
{
|
|||
|
text(1,40,"Status <20>berwachung EGR-System");
|
|||
|
INPAapiResultDigital(logik_var,"STAT_STATEGRSYS_WERT",1);
|
|||
|
digitalout(logik_var, 3,41,"bereit ","nicht bereit ");
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// *************************
|
|||
|
// *** Analog1-Screen ***
|
|||
|
// *************************
|
|||
|
SCREEN s_analog1() {
|
|||
|
ftextout("Analogwerte 1",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Batteriespannung");
|
|||
|
text(2,0,"[Volt]");
|
|||
|
INPAapiJob(sgbd,"STATUS_UBATT","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_UBATT_WERT",1);
|
|||
|
analogout(zahlen_var/1000, 3,0, 0.0, 18.0, 0.0, 18.0, "4.2");
|
|||
|
|
|||
|
text(1,43,"Luftmasse");
|
|||
|
text(2,43,"[kg/h]");
|
|||
|
INPAapiJob(sgbd,"STATUS_LMM_MASSE","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LMM_MASSE_WERT",1);
|
|||
|
analogout(zahlen_var, 3,43, 0.0, 400.0, 0.0, 400.0, "4.2");
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Motordrehzahl");
|
|||
|
text(2,0,"[1/min]");
|
|||
|
INPAapiJob(sgbd,"STATUS_MOTORDREHZAHL","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_MOTORDREHZAHL_WERT",1);
|
|||
|
analogout(zahlen_var, 3,0, 0.0, 6000.0, 0.0, 6000.0, "4.2");
|
|||
|
|
|||
|
text(1,43,"Motortemperatur");
|
|||
|
text(2,43,"[Grad C]");
|
|||
|
INPAapiJob(sgbd,"STATUS_MOTORTEMPERATUR","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_MOTORTEMPERATUR_WERT",1);
|
|||
|
analogout(zahlen_var, 3,43, 0.0, 120.0, 0.0, 120.0, "4.2");
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Ansauglufttemperatur");
|
|||
|
text(2,0,"[Grad C]");
|
|||
|
INPAapiJob(sgbd,"STATUS_AN_LUFTTEMPERATUR","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_AN_LUFTTEMPERATUR_WERT",1);
|
|||
|
analogout(zahlen_var, 3,0, -40.0, 120.0, -40.0, 120.0, "4.2");
|
|||
|
|
|||
|
text(1,43,"Kuehlmitteltemperatur");
|
|||
|
text(2,43,"[Grad C]");
|
|||
|
INPAapiJob(sgbd,"STATUS_KUEHLMITTELTEMPERATUR","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_KUEHLMITTELTEMPERATUR_WERT",1);
|
|||
|
analogout(zahlen_var, 3,43, 0.0, 120.0, 0.0, 120.0, "4.2");
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"PWG Poti 1");
|
|||
|
INPAapiJob(sgbd,"STATUS_PWG_POTI_SPANNUNG","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultText(text_var,"STAT_PWG_POTI_SPANNUNG_EINH",1,"");
|
|||
|
text(2,0,"["+text_var+"]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_PWG_POTI_SPANNUNG_WERT",1);
|
|||
|
analogout(zahlen_var, 3,0, 0.0, 5000.0, 675, 4000, "4.0");
|
|||
|
|
|||
|
text(1,43,"PWG Poti 2");
|
|||
|
INPAapiJob(sgbd,"STATUS_PEDALWERTGEBER_POTI_2","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultText(text_var,"STAT_PEDALWERTGEBER_POTI_2_EINH",1,"");
|
|||
|
text(2,43,"["+text_var+"]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_PEDALWERTGEBER_POTI_2_WERT",1);
|
|||
|
analogout(zahlen_var, 3,43, 0.0, 5000.0, 295, 2000, "4.0");
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
// *************************
|
|||
|
// *** Analog2-Screen ***
|
|||
|
// *************************
|
|||
|
SCREEN s_analog2() {
|
|||
|
ftextout("Analogwerte 2",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
|
|||
|
LINE("@","") {
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_KILOMETERSTAND","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
text(1,0,"Kilometerstand");
|
|||
|
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_KILOMETERSTAND_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.2",text_var);
|
|||
|
text(3,0,text_var);
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_BETRIEBSSTUNDENZAEHLER","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
text(1,43,"Betriebsstundenz<6E>hler");
|
|||
|
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_BETRIEBSSTUNDENZAEHLER_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.2",text_var);
|
|||
|
text(3,43,text_var);
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
LINE("@","") {
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_ABGASTEMPERATUR_KAT","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
text(5,0,"KAT-ABGASTEMPERATUR");
|
|||
|
text(6,0,"[<5B>C]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_ABGASTEMPERATUR_KAT_WERT",1);
|
|||
|
analogout(zahlen_var, 7,0, 0.0, 400.0, 0.0, 400.0, "4.2");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_KRAFTSTOFFTEMPERATUR","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
text(5,43,"Kraftstofftemperatur");
|
|||
|
text(6,43,"[<5B>C]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_KRAFTSTOFFTEMPERATUR_WERT",1);
|
|||
|
analogout(zahlen_var, 7,43, 0.0, 100.0, 0.0, 100.0, "4.2");
|
|||
|
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
LINE("@","") {
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_LUFTEMPERATUR","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
text(1,0,"Lufttemperatur");
|
|||
|
text(2,0,"[<5B>C]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LUFTEMPERATUR_WERT",1);
|
|||
|
analogout(zahlen_var, 3,0, 0.0, 50.0, 0.0, 50.0, "4.2");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_ATMOSPHAERENDRUCK","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
text(1,43,"Atmosph<70>rendruck");
|
|||
|
INPAapiResultText(text_var,"STAT_ATMOSPHAERENDRUCK_EINH",1,"");
|
|||
|
text(2,43,"["+text_var+"]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_ATMOSPHAERENDRUCK_WERT",1);
|
|||
|
analogout(zahlen_var, 3,43, 0.0, 1100.0, 0.0, 1100.0, "4.2");
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
LINE("@","") {
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_UMGEBUNGSTEMPERATUR","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
text(1,0,"Umgebungstemperatur");
|
|||
|
text(2,0,"[<5B>C]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_UMGEBUNGSTEMPERATUR_WERT",1);
|
|||
|
analogout(zahlen_var, 3,0, 0.0, 100.0, 0.0, 100.0, "4.2");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_LADELUFTTEMPERATUR","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
text(1,43,"Ladelufttemperatur");
|
|||
|
text(2,43,"[<5B>C]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LADELUFTTEMPERATUR_WERT",1);
|
|||
|
analogout(zahlen_var, 3,43, 0.0, 100.0, 0.0, 100.0, "4.2");
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// *************************
|
|||
|
// *** Mengenk-Screen ***
|
|||
|
// *************************
|
|||
|
SCREEN s_analog_mk() {
|
|||
|
|
|||
|
ftextout("Selektive Mengenkorrektur",1,0,1,0);
|
|||
|
ftextout("Laufunruhemessung (LL-Regler ist ein)",3,0,0,0);
|
|||
|
LINE("Selektive Mengenkorrektur","") {
|
|||
|
INPAapiJob(sgbd,"STATUS_MOTORDREHZAHL","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_MOTORDREHZAHL_WERT",1);
|
|||
|
if(zahlen_var == 0)
|
|||
|
{
|
|||
|
textout("Bitte zuerst Motor starten!",5,10);
|
|||
|
}
|
|||
|
else {
|
|||
|
|
|||
|
|
|||
|
//ftextout("Selektive Mengenkorrektur",0,0,1,1);
|
|||
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_ZYL","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_LAUFUNRUHE_LLR_MENGE","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
|
|||
|
text(3,0,"Zylinder 1");
|
|||
|
text(4,0,"[mg/Hub]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LAUFUNRUHE_LLR_MENGE_ZYL1_WERT",1);
|
|||
|
analogout(zahlen_var, 5,0, -5.0, 5.0, -3.0, 3.0, "4.2");
|
|||
|
|
|||
|
text(3,43,"Zylinder 2");
|
|||
|
text(4,43,"[mg/Hub]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LAUFUNRUHE_LLR_MENGE_ZYL2_WERT",1);
|
|||
|
analogout(zahlen_var, 5,43, -5.0, 5.0, -3.0, 3.0, "4.2");
|
|||
|
|
|||
|
text(9,0,"Zylinder 3");
|
|||
|
text(10,0,"[mg/Hub]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LAUFUNRUHE_LLR_MENGE_ZYL3_WERT",1);
|
|||
|
analogout(zahlen_var, 11,0, -5.0, 5.0, -3.0, 3.0, "4.2");
|
|||
|
|
|||
|
text(9,43,"Zylinder 4");
|
|||
|
text(10,43,"[mg/Hub]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LAUFUNRUHE_LLR_MENGE_ZYL4_WERT",1);
|
|||
|
analogout(zahlen_var, 11,43, -5.0, 5.0, -3.0, 3.0, "4.2");
|
|||
|
|
|||
|
text(15,0,"Zylinder 5");
|
|||
|
text(16,0,"[mg/Hub]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LAUFUNRUHE_LLR_MENGE_ZYL5_WERT",1);
|
|||
|
analogout(zahlen_var, 17,0, -5.0, 5.0, -3.0, 3.0, "4.2");
|
|||
|
|
|||
|
text(15,43,"Zylinder 6");
|
|||
|
text(16,43,"[mg/Hub]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LAUFUNRUHE_LLR_MENGE_ZYL6_WERT",1);
|
|||
|
analogout(zahlen_var, 17,43, -5.0, 5.0, -3.0, 3.0, "4.2");
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
SCREEN s_status_scr() {
|
|||
|
int z1;
|
|||
|
ftextout("Status SCR",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
|
|||
|
z1=5;
|
|||
|
textout(" < F1 > Allgemein",z1,5);
|
|||
|
z1=z1+2;
|
|||
|
textout(" < F2 > Abgasanlage",z1,5);
|
|||
|
z1=z1+2;
|
|||
|
textout(" < F3 > Tanksystem",z1,5);
|
|||
|
z1=z1+2;
|
|||
|
textout(" < F4 > Messdaten speichern",z1,5);
|
|||
|
|
|||
|
z1=z1+3;
|
|||
|
textout(" < F10 > Zur<75>ck",z1,5);
|
|||
|
textout("< Shift > + < F10 > INPA beenden",z1,5);
|
|||
|
}
|
|||
|
|
|||
|
SCREEN s_status_scr_allg()
|
|||
|
{
|
|||
|
int z1;
|
|||
|
ftextout("Status SCR - allgemein",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Zustand des hydr. SCR Systems");
|
|||
|
text(2,0,"[]");
|
|||
|
text(3,0,"(CoSCR_st)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","JA;CoSCR_st","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_CoSCR_st_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"SubZustand des hydr. SCR Systems");
|
|||
|
text(2,43,"[]");
|
|||
|
text(3,43,"(CoSCR_stSub)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","JA;CoSCR_stSub","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_CoSCR_stSub_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Anzahl der erfolgten Adaptionen");
|
|||
|
text(2,0,"[]");
|
|||
|
text(3,0,"(SCRAd_ctSlip)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","JA;SCRAd_ctSlip","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_SCRAd_ctSlip_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Plausibilit<69>ten");
|
|||
|
text(2,43,"[]");
|
|||
|
text(3,43,"(SCRAd_facPlaus_Fld_0)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","JA;SCRAd_facPlaus_Fld_0","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_SCRAd_facPlaus_Fld0_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Langzeitadaptionfaktor");
|
|||
|
text(2,0,"[]");
|
|||
|
text(2,0,"(SCRAd_facQtyAdap)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCRAd_facQtyAdap","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_SCRAd_facQtyAdap_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Langzeitadaptionfaktor (roh)");
|
|||
|
text(2,43,"[]");
|
|||
|
text(3,43,"(SCRAd_facQtyAdapRaw_mp)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCRAd_facQtyAdapRaw_mp","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_SCRAd_facQtyAdapRaw_mp_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"aktueller NH3-Speicherf<72>llstand");
|
|||
|
text(2,0,"[g]");
|
|||
|
text(3,0,"(SCRMod_mEstNH3Ld)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCRMod_mEstNH3Ld","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCRMod_mEstNH3Ld_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"NOx Rohemissionen");
|
|||
|
text(2,43,"[ppm]");
|
|||
|
text(3,43,"(SCRFFC_rPPMNOxUs)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCRFFC_rPPMNOxUs","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCRFFC_rPPMNOxUs_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"ermittelte NOx - Konzentration 1");
|
|||
|
text(2,0,"[ppm]");
|
|||
|
text(3,0,"(Com_rNOxCat2Ds)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;Com_rNOxCat2Ds","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_Com_rNOxCat2Ds_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"ermittelte NOx - Konzentration 2");
|
|||
|
text(2,43,"[ppm]");
|
|||
|
text(3,43,"(Com_rNOxDs)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;Com_rNOxDs","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_Com_rNOxDs_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Freigabestatus Dosierstrategie (bitweise)");
|
|||
|
text(2,0,"[]");
|
|||
|
text(3,0,"(DStgy_stCondDos)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;DStgy_stCondDos","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultText(text_var,"STAT_DStgy_stCondDos_WERT",1,"");
|
|||
|
ftextout(text_var, 4,0, 0, 2);
|
|||
|
|
|||
|
text(1,43,"Sensoroffset durch Schubkalibrierung (Downstream)");
|
|||
|
text(2,43,"[ppm]");
|
|||
|
text(3,43,"(Exh_rNOxOfsNoCat2Ds)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;Exh_rNOxOfsNoCat2Ds","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_Exh_rNOxOfsNoCat2Ds_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Sensoroffset durch Schubkalibrierung (Upstream)");
|
|||
|
text(2,0,"[ppm]");
|
|||
|
text(3,0,"(Exh_rNOxOfsNSCDs)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;Exh_rNOxOfsNSCDs","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_Exh_rNOxOfsNSCDs_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"durchschnittlicher tats<74>chlicher Wirkungsgrad im Temperaturbereich 1");
|
|||
|
text(2,43,"[]");
|
|||
|
text(3,43,"(SCRChk_etaActAvrg1_mp)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCRChk_etaActAvrg1_mp","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCRChk_etaActAvrg1_mp_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"durchschnittlicher tats<74>chlicher Wirkungsgrad im Temperaturbereich 2");
|
|||
|
text(2,0,"[]");
|
|||
|
text(3,0,"(SCRChk_etaActAvrg2_mp)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCRChk_etaActAvrg2_mp","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCRChk_etaActAvrg2_mp_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"gemittelte normierte Nox-Abweichung zwischen Modellwert und Nox-Sensor vor SCR");
|
|||
|
text(2,43,"[]");
|
|||
|
text(3,43,"(SCRChk_rNOxDiffAvrgUs_mp)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCRChk_rNOxDiffAvrgUs_mp","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCRChk_rNOxDiffAvrgUs_mp_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"normierte Nox-Abweichung zwischen Modellwert und Nox-Sensor vor SCR");
|
|||
|
text(2,0,"[]");
|
|||
|
text(3,0,"(SCRChk_rNOxDiffUs_mp)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCRChk_rNOxDiffUs_mp","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCRChk_rNOxDiffUs_mp_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Harnstoffverbrauch seit letztem Motorstart");
|
|||
|
text(2,43,"[g]");
|
|||
|
text(3,43,"(UDC_mRdcAgAct)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UDC_mRdcAgAct","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_UDC_mRdcAgAct_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Harnstoffverbrauch seit letztem Umpumpvorgang");
|
|||
|
text(2,0,"[g]");
|
|||
|
text(3,0,"(UDC_mRdcAgDosQnt)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UDC_mRdcAgDosQnt","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_UDC_mRdcAgDosQnt_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
SCREEN s_status_scr_abgas()
|
|||
|
{
|
|||
|
int z1;
|
|||
|
ftextout("Status SCR - Abgasanlage",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Freigabe der Dosierung durch die Dosierstrategie");
|
|||
|
text(2,0,"[]");
|
|||
|
text(3,0,"(DStgy_stMetStgy)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","JA;DStgy_stMetStgy","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_DStgy_stMetStgy_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Downstream - Signal von NOx-Sensor 2 (Offset-korrigiert)");
|
|||
|
text(2,43,"[ppm]");
|
|||
|
text(3,43,"(Exh_rNOxNoCat2Ds)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","JA;Exh_rNOxNoCat2Ds","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_Exh_rNOxNoCat2Ds_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Upstream - Signal von NOx-Sensor 1 (Offset-korrigiert)");
|
|||
|
text(2,0,"[]");
|
|||
|
text(3,0,"(Exh_rNOxNSCDs)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","JA;Exh_rNOxNSCDs","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_Exh_rNOxNSCDs_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"O2-Konzentration im Abgas nach Sekund<6E>rkatalysator");
|
|||
|
text(2,43,"[]");
|
|||
|
text(3,43,"(Exh_rO2LinNoCat2Ds)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","JA;Exh_rO2LinNoCat2Ds","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_Exh_rO2LinNoCat2Ds_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"O2-Konzentration im Abgas nach Hauptkatalysator");
|
|||
|
text(2,0,"[]");
|
|||
|
text(3,0,"(Exh_rO2LinNSCDs)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;Exh_rO2LinNSCDs","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_Exh_rO2LinNSCDs_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Lambdasignal aus NOx-Sensor nach dem NOx-Speicherkatalysator 2");
|
|||
|
text(2,43,"[]");
|
|||
|
text(3,43,"(Exh_stLamLeanNoCat2Ds)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;Exh_stLamLeanNoCat2Ds","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_Exh_stLamLeanNoCat2Ds_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Lambdasignal aus NOx-Sensor nach dem NOx-Speicherkatalysator 1");
|
|||
|
text(2,0,"[]");
|
|||
|
text(3,0,"(Exh_stLamLeanNSCDs)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;Exh_stLamLeanNSCDs","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_Exh_stLamLeanNSCDs_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"NOx-Statussignal nach NOx-Speicherkatalysator");
|
|||
|
text(2,43,"[]");
|
|||
|
text(3,43,"(Exh_stNOxNSCDs)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;Exh_stNOxNSCDs","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_Exh_stNOxNSCDs_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","")
|
|||
|
{
|
|||
|
text(1,0,"Taupunktende Nox-Sensor nach SCR-KAT");
|
|||
|
text(2,0,"(1 = erkannt, 0 nicht erkannt)");
|
|||
|
text(3,0,"(Exh_stNOxSensDiaEnaNoCat2Ds)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;Exh_stNOxSensDiaEnaNoCat2Ds","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_Exh_stNOxSensDiaEnaNoCat2Ds_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Taupunktende Nox-Sensor vor SCR-KAT");
|
|||
|
text(2,43,"(1 = erkannt, 0 nicht erkannt)");
|
|||
|
text(3,43,"(Exh_stNOxSensDiaEnaNSCDs)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;Exh_stNOxSensDiaEnaNSCDs","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_Exh_stNOxSensDiaEnaNSCDs_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Gewichtete mittlere Temperatur des SCR Katalysators");
|
|||
|
text(2,0,"[<5B>C]");
|
|||
|
text(3,0,"(SCRT_tAvrg)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCRT_tAvrg","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCRT_tAvrg_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"R<>ckmeldung der eindosierten Menge");
|
|||
|
text(2,43,"[mg/s]");
|
|||
|
text(3,43,"(UDC_dmRdcAgDos)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UDC_dmRdcAgDos","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_UDC_dmRdcAgDos_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","")
|
|||
|
{
|
|||
|
text(1,0,"Tastverh<72>ltnis des Ausgangssignals der Dosierventilendstufe");
|
|||
|
text(2,0,"[%]");
|
|||
|
text(3,0,"(UDosVlv_rPs)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UDosVlv_rPs","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_UDosVlv_rPs_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Sollwert f<>r das Tastverh<72>ltnis der Dosierventilendstufe");
|
|||
|
text(2,43,"[%]");
|
|||
|
text(3,43,"(UDosVlv_rDyc)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UDosVlv_rDyc","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_UDosVlv_rDyc_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
SCREEN s_status_scr_tank()
|
|||
|
{
|
|||
|
int z1;
|
|||
|
ftextout("Status SCR - Tanksystem",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Freigabestatus Passivtank");
|
|||
|
text(2,0,"[]");
|
|||
|
text(3,0,"RFC_stRls_mp");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","JA;RFC_stRls_mp","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_RFC_stRls_mp_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Pumpendruck des SCR-Systems");
|
|||
|
text(2,43,"[hPa]");
|
|||
|
text(3,43,"(SCR_pUPmpP)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","JA;SCR_pUPmpP","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCR_pUPmpP_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Rohwert F<>llstand Passivtank");
|
|||
|
text(2,0,"[%]");
|
|||
|
text(3,0,"(SCR_rRawUPasTnkLvl)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","JA;SCR_rRawUPasTnkLvl","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCR_rRawUPasTnkLvl_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"F<>llstand - Passivtank");
|
|||
|
text(2,43,"[%]");
|
|||
|
text(3,43,"(SCR_rUPasTnkLvl)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","JA;SCR_rUPasTnkLvl","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCR_rUPasTnkLvl_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Rohwert F<>llstand Aktivtank");
|
|||
|
text(2,0,"[%]");
|
|||
|
text(3,0,"SCR_rRawUTnkLvl");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCR_rRawUTnkLvl","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCR_rRawUTnkLvl_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"F<>llstand Aktivtank");
|
|||
|
text(2,43,"[%]");
|
|||
|
text(3,43,"(SCR_rUTnkLvl)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCR_rUTnkLvl","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCR_rUTnkLvl_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Temperatur der Harnstoff-Wasser-L<>sung");
|
|||
|
text(2,0,"[<5B>C]");
|
|||
|
text(3,0,"(SCR_tUTnkT)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCR_tUTnkT","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCR_tUTnkT_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Sensorrohspannung des Temperatursensors vor Harnstoffkatalysator");
|
|||
|
text(2,43,"[mV]");
|
|||
|
text(3,43,"(SCR_uRawUCatUsT)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCR_uRawUCatUsT","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCR_uRawUCatUsT_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Sensorrohspannung des Drucksensors der HWL-Pumpe");
|
|||
|
text(2,0,"[mV]");
|
|||
|
text(3,0,"(SCR_uRawUPmpP)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCR_uRawUPmpP","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCR_uRawUPmpP_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Sensorrohspannung des Temperatursensors der Harnstoff-Wasser-L<>sung");
|
|||
|
text(2,43,"[mV]");
|
|||
|
text(3,43,"(SCR_uRawUTnkT)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCR_uRawUTnkT","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCR_uRawUTnkT_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Resttankmenge");
|
|||
|
text(2,0,"[g]");
|
|||
|
text(3,0,"(UDC_mRdcAgRmn)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UDC_mRdcAgRmn","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_UDC_mRdcAgRmn_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Nachtankerkennung Passivtank");
|
|||
|
text(2,43,"[]");
|
|||
|
text(3,43,"(UDC_stDetPasTnkReFill)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UDC_stDetPasTnkReFill","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_UDC_stDetPasTnkReFill_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Nachtankerkennung Aktivtank");
|
|||
|
text(2,0,"[]");
|
|||
|
text(3,0,"(UDC_stDetReFill)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UDC_stDetReFill","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_UDC_stDetReFill_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Aktueller Stromspiegel der Druckleitung bzw. F<>rdermodulheizung");
|
|||
|
text(2,43,"[uA]");
|
|||
|
text(3,43,"UHC_iPLSensDia_mp");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UHC_iPLSensDia_mp","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_UHC_iPLSensDia_mp_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"aktueller Stromspiegel der Tankheizung");
|
|||
|
text(2,0,"[uA]");
|
|||
|
text(3,0,"(UHC_iTnkSensDia_mp)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UHC_iTnkSensDia_mp","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_UHC_iTnkSensDia_mp_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Anforderung zum Heizen des Tanks und / oder der Druckleitung");
|
|||
|
text(2,43,"[]");
|
|||
|
text(3,43,"(UHC_stCReq)");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UHC_stCReq","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_UHC_stCReq_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Status der Tanktemperatur und Auftauen der Druckleitung");
|
|||
|
text(2,0,"[]");
|
|||
|
text(3,0,"(UHC_stCtl)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UHC_stCtl","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_UHC_stCtl_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Status der Auftaupr<70>fung");
|
|||
|
text(2,43,"[]");
|
|||
|
text(3,43,"(UHC_stDfrstChk)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UHC_stDfrstChk","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_UHC_stDfrstChk_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Status - Sollwert f<>r die Druckleitungsheizung");
|
|||
|
text(2,0,"[]");
|
|||
|
text(3,0,"(UHtrPL_st)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UHtrPL_st","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_UHtrPL_st_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Status der Endstufe f<>r die Druckleitungsheizung");
|
|||
|
text(2,43,"[]");
|
|||
|
text(3,43,"(UHtrPL_stPs)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UHtrPL_stPs","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_UHtrPL_stPs_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Status der Endstufe f<>r die Tankheizung");
|
|||
|
text(2,0,"[]");
|
|||
|
text(3,0,"(UHtrTnk_st)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UHtrTnk_st","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_UHtrTnk_st_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Status - Sollwert f<>r die Tankheizung");
|
|||
|
text(2,43,"[]");
|
|||
|
text(3,43,"(UHtrTnk_stPs)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UHtrTnk_stPs","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_UHtrTnk_stPs_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Tastverh<72>ltnis zur Ansteuerung des Pumpenmotors (Sollwert)");
|
|||
|
text(2,0,"[%]");
|
|||
|
text(3,0,"(UPmpMot_r)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UPmpMot_r","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_UPmpMot_r_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Tastverh<72>ltnis zur Ansteuerung des Pumpenmotors (Endstufe)");
|
|||
|
text(2,43,"[%]");
|
|||
|
text(3,43,"(UPmpMot_rPs)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UPmpMot_rPs","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_UPmpMot_rPs_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Tastverhaeltnis an der Endstufe");
|
|||
|
text(2,0,"[%]");
|
|||
|
text(3,0,"(UPmpReFl_rPs)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UPmpReFl_rPs","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_UPmpReFl_rPs_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Status der Auftaupr<70>fung");
|
|||
|
text(2,43,"[]");
|
|||
|
text(3,43,"(UPmpReFl_st)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;UPmpReFl_st","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_UPmpReFl_st_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Status - digitaler Ausgangs zum 4/2 Wegeventil (Sollwert)");
|
|||
|
text(2,0,"[]");
|
|||
|
text(3,0,"(URevVlv_st)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;URevVlv_st","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_URevVlv_st_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
|
|||
|
text(1,43,"Status - digitaler Ausgangs zum 4/2 Wegeventil (Endstufe)");
|
|||
|
text(2,43,"[]");
|
|||
|
text(3,43,"(URevVlv_stPs)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;URevVlv_stPs","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_URevVlv_stPs_WERT",1);
|
|||
|
inttostring(ganz_zahl,text_var);
|
|||
|
ftextout(text_var,4,43,0,2);
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Temperatur vor SCR-Katalysator");
|
|||
|
text(2,0,"[<5B>C]");
|
|||
|
text(3,0,"(SCR_tUCatUsT)");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCR_tUCatUsT","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_SCR_tUCatUsT_WERT",1);
|
|||
|
realtostring(zahlen_var,"6.3",text_var);
|
|||
|
ftextout(text_var,4,0,0,2);
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
SCREEN s_igrinfo() {
|
|||
|
string tmp;
|
|||
|
int z1;
|
|||
|
|
|||
|
|
|||
|
ftextout("IGR Info",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
|
|||
|
LINE("","")
|
|||
|
{
|
|||
|
ftextout("IGR Codierung",1,1,0,0);
|
|||
|
INPAapiJob(sgbd,"STATUS_CODIERUNG_IGR","","");
|
|||
|
INPAapiResultText( text_var,"STAT_CODIERUNG_IGR_TEXT",1,"");
|
|||
|
ftextout( text_var,3,1,0,2);
|
|||
|
}
|
|||
|
LINE("","")
|
|||
|
{
|
|||
|
z1=1;
|
|||
|
INPAapiJob(sgbd,"STATUS_IGRINFO","","");
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_IGR3_BITS0",1);
|
|||
|
inttostring(ganz_zahl,tmp);
|
|||
|
ftextout("IGR-Low Enabled",z1,1,0,0);
|
|||
|
ftextout(tmp,z1,25,0,2);
|
|||
|
z1=z1+1;
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_IGR3_BITS1",1);
|
|||
|
inttostring(ganz_zahl,tmp);
|
|||
|
ftextout("IGR-Med Enabled",z1,1,0,0);
|
|||
|
ftextout(tmp,z1,25,0,2);
|
|||
|
z1=z1+1;
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_IGR3_BITS2",1);
|
|||
|
inttostring(ganz_zahl,tmp);
|
|||
|
ftextout("IGR-Hi Enabled",z1,1,0,0);
|
|||
|
ftextout(tmp,z1,25,0,2);
|
|||
|
z1=z1+1;
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_IGR3_BITS3",1);
|
|||
|
inttostring(ganz_zahl,tmp);
|
|||
|
ftextout("IGR-Low Aktiv",z1,1,0,0);
|
|||
|
ftextout(tmp,z1,25,0,2);
|
|||
|
z1=z1+1;
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_IGR3_BITS4",1);
|
|||
|
inttostring(ganz_zahl,tmp);
|
|||
|
ftextout("IGR-Med Aktiv",z1,1,0,0);
|
|||
|
ftextout(tmp,z1,25,0,2);
|
|||
|
z1=z1+1;
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_IGR3_BITS5",1);
|
|||
|
inttostring(ganz_zahl,tmp);
|
|||
|
ftextout("IGR-Hi Aktiv",z1,1,0,0);
|
|||
|
ftextout(tmp,z1,25,0,2);
|
|||
|
z1=z1+1;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// *************************
|
|||
|
// *** Analog3-Screen ***
|
|||
|
// *************************
|
|||
|
SCREEN s_analog3() {
|
|||
|
ftextout("Selektive Drehungleichf<68>rmigkeit",1,0,1,0);
|
|||
|
ftextout("(LL-Regler ist aus)",3,0,0,0);
|
|||
|
LINE("Selektive Drehungleichf<68>rmigkeit","") {
|
|||
|
INPAapiJob(sgbd,"STATUS_MOTORDREHZAHL","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_MOTORDREHZAHL_WERT",1);
|
|||
|
if(zahlen_var == 0)
|
|||
|
{
|
|||
|
textout("Bitte zuerst Motor starten!",5,10);
|
|||
|
}
|
|||
|
else {
|
|||
|
|
|||
|
|
|||
|
//ftextout("Selektive Drehungleichf<68>rmigkeit",0,0,1,1);
|
|||
|
INPAapiJob(sgbd,"START_SYSTEMCHECK_ZYL","LLR_AUS","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_LAUFUNRUHE_DREHZAHL","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
|
|||
|
text(3,0,"Zylinder 1");
|
|||
|
text(4,0,"[rpm]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LAUFUNRUHE_DREHZAHL_ZYL1_WERT",1);
|
|||
|
analogout(zahlen_var, 5,0, 0.0, 900.0, 0.0, 900.0, "4.2");
|
|||
|
|
|||
|
|
|||
|
text(3,43,"Zylinder 2");
|
|||
|
text(4,43,"[rpm]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LAUFUNRUHE_DREHZAHL_ZYL2_WERT",1);
|
|||
|
analogout(zahlen_var, 5,43, 0.0, 900.0, 0.0, 900.0, "4.2");
|
|||
|
|
|||
|
|
|||
|
text(9,0,"Zylinder 3");
|
|||
|
text(10,0,"[rpm]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LAUFUNRUHE_DREHZAHL_ZYL3_WERT",1);
|
|||
|
analogout(zahlen_var, 11,0, 0.0, 900.0, 0.0, 900.0, "4.2");
|
|||
|
|
|||
|
|
|||
|
text(9,43,"Zylinder 4");
|
|||
|
text(10,43,"[rpm]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LAUFUNRUHE_DREHZAHL_ZYL4_WERT",1);
|
|||
|
analogout(zahlen_var, 11,43, 0.0, 900.0, 0.0, 900.0, "4.2");
|
|||
|
|
|||
|
|
|||
|
text(15,0,"Zylinder 5");
|
|||
|
text(16,0,"[rpm]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LAUFUNRUHE_DREHZAHL_ZYL5_WERT",1);
|
|||
|
analogout(zahlen_var, 17,0, 0.0, 900.0, 0.0, 900.0, "4.2");
|
|||
|
|
|||
|
|
|||
|
text(15,43,"Zylinder 6");
|
|||
|
text(16,43,"[rpm]");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LAUFUNRUHE_DREHZAHL_ZYL6_WERT",1);
|
|||
|
analogout(zahlen_var, 17,43, 0.0, 900.0, 0.0, 900.0, "4.2");
|
|||
|
}
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// ****************************
|
|||
|
// *** SOLL / IST Screen ***
|
|||
|
// ****************************
|
|||
|
SCREEN s_soll_ist() {
|
|||
|
ftextout("SOLL/IST WERTE 1",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Ladedruck SOLL");
|
|||
|
text(2,0,"[mbar]");
|
|||
|
INPAapiJob(sgbd,"STATUS_LADEDRUCK_SOLL","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LADEDRUCK_SOLL_WERT",1);
|
|||
|
analogout(zahlen_var, 3,0, 0.0, 2500.0, 850.0, 2500.0, "4.2");
|
|||
|
|
|||
|
text(1,43,"Ladedruck IST");
|
|||
|
text(2,43,"[mbar]");
|
|||
|
INPAapiJob(sgbd,"STATUS_LADEDRUCK_IST","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LADEDRUCK_IST_WERT",1);
|
|||
|
analogout(zahlen_var*10, 3,43, 0.0, 2500.0, 850.0, 2500.0, "4.2"); // SG liefert Wert in kPa
|
|||
|
}
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Ladedruck SPANNUNG");
|
|||
|
text(2,0,"[mV]");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","JA;IULDF","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LADEDRUCK_SPANNUNG_WERT",1);
|
|||
|
analogout(zahlen_var, 3,0, 0.0, 5000.0, 850.0, 5000.0, "4.2");
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Raildruck SOLL");
|
|||
|
text(2,0,"[bar]");
|
|||
|
INPAapiJob(sgbd,"STATUS_RAILDRUCK_SOLL","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_RAILDRUCK_SOLL_WERT",1);
|
|||
|
analogout(zahlen_var, 3,0, 0.0, 1640.0, 33.0, 1640.0, "4.2");
|
|||
|
|
|||
|
text(1,43,"Raildruck IST");
|
|||
|
text(2,43,"[bar]");
|
|||
|
INPAapiJob(sgbd,"STATUS_RAILDRUCK_IST","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_RAILDRUCK_IST_WERT",1);
|
|||
|
analogout(zahlen_var, 3,43, 0.0, 1640.0, 33.0, 1640.0, "4.2");
|
|||
|
|
|||
|
}
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Raildruck SPANNUNG");
|
|||
|
text(2,0,"[mV]");
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","JA;IURDR","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_RAILDRUCK_SPANNUNG_ROH_WERT",1);
|
|||
|
analogout(zahlen_var, 3,0, 0.0, 5000.0, 60.0, 5000.0, "4.2");
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Luftmasse Soll");
|
|||
|
text(2,0,"[mg/Hub]");
|
|||
|
INPAapiJob(sgbd,"STATUS_LUFTMASSE_SOLL","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LUFTMASSE_SOLL_WERT",1);
|
|||
|
analogout(zahlen_var, 3,0, 0.0, 650.0, 35.0, 650.0, "4.2");
|
|||
|
|
|||
|
text(1,43,"Luftmasse IST");
|
|||
|
text(2,43,"[mg/Hub]");
|
|||
|
INPAapiJob(sgbd,"STATUS_LUFTMASSE_IST","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LUFTMASSE_IST_WERT",1);
|
|||
|
analogout(zahlen_var, 3,43, 0.0, 650.0, 35.0, 650.0, "4.2");
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
// *************************
|
|||
|
// *** KAT/CSF-Screen ***
|
|||
|
// *************************
|
|||
|
SCREEN s_katcsf() {
|
|||
|
ftextout("Messwerte KAT / CSF",1,0,1,0);
|
|||
|
|
|||
|
|
|||
|
LINE("Abgastemperatur","") {
|
|||
|
//ftextout("Selektive Drehungleichf<68>rmigkeit",0,0,1,1);
|
|||
|
INPAapiJob(sgbd,"STATUS_ABGASTEMPERATUR_CSF","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
|
|||
|
|
|||
|
|
|||
|
text(3,0,"Abgastemperatur CSF");
|
|||
|
INPAapiResultText( text_var, "STAT_ABGASTEMPERATUR_CSF_EINH",1,"");
|
|||
|
text(4,0,text_var);
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_ABGASTEMPERATUR_CSF_WERT",1);
|
|||
|
analogout(zahlen_var, 5,0, -40.0, 1000.0, -40.0, 1000.0, "4.2");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_ABGASTEMPERATUR_KAT","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
|
|||
|
text(3,43,"Abgastemperatur KAT");
|
|||
|
INPAapiResultText( text_var, "STAT_ABGASTEMPERATUR_KAT_EINH",1,"");
|
|||
|
text(4,43,text_var);
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_ABGASTEMPERATUR_KAT_WERT",1);
|
|||
|
analogout(zahlen_var, 5,43, -40.0, 1000.0, -40.0, 1000.0, "3.2");
|
|||
|
}
|
|||
|
LINE("Ladedruck","") {
|
|||
|
INPAapiJob(sgbd,"STATUS_LADEDRUCK_IST","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
|
|||
|
|
|||
|
|
|||
|
text(3,0,"Ladedruck IST-Wert");
|
|||
|
INPAapiResultText( text_var, "STAT_LADEDRUCK_IST_EINH",1,"");
|
|||
|
text(4,0,text_var);
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_LADEDRUCK_IST_WERT",1);
|
|||
|
analogout(zahlen_var, 5,0, 60.0, 280.0, 60.0, 280.0, "3.2");
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_DIFFERENZDRUCK_CSF","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
|
|||
|
text(3,43,"Differenzdruck CSF");
|
|||
|
INPAapiResultText( text_var, "STAT_DIFFERENZDRUCK_CSF_EINH",1,"");
|
|||
|
text(4,43,text_var);
|
|||
|
INPAapiResultAnalog(zahlen_var,"STAT_DIFFERENZDRUCK_CSF_WERT",1);
|
|||
|
analogout(zahlen_var, 5,43, -30.0, 1200.0, -30.0, 1200.0, "4.3");
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// *********************
|
|||
|
// *** IBS Hauptmenu ***
|
|||
|
// *********************
|
|||
|
|
|||
|
SCREEN s_main_pm()
|
|||
|
{
|
|||
|
ftextout("Powermanagement IBS",3,20,1,1);
|
|||
|
ftextout("< F1 > IBS Identifikation", 9,5,0,1);
|
|||
|
ftextout("< F2 > PM 1 Byte Feld" ,11,5,0,1);
|
|||
|
ftextout("< F3 > PM 2 Byte Feld" ,13,5,0,1);
|
|||
|
ftextout("< F4 > PM 3 Byte Feld" ,15,5,0,1);
|
|||
|
ftextout("< F5 > Batterietausch registrieren" ,17,5,0,1);
|
|||
|
ftextout("< F6 > Histogramm Reset" ,19,5,0,1);
|
|||
|
ftextout("< F7 > Start PM MESSEMODE",21,5,0,1);
|
|||
|
ftextout("< F8 > Stop PM MESSEMODE",23,5,0,1);
|
|||
|
ftextout("< F10> Zur<75>ck" ,25,5,0,1);
|
|||
|
ftextout("< Shift > + < F10> INPA beenden" ,25,45,0,1);
|
|||
|
ftextout("< Shift > + < F1> IBS Erkennung R<>cksetzen", 9,45,0,1);
|
|||
|
stop();
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
// ************************
|
|||
|
// *** IBS Ident-Screen ***
|
|||
|
// ************************
|
|||
|
SCREEN s_ibs_ident()
|
|||
|
{
|
|||
|
string s1;
|
|||
|
|
|||
|
INPAapiJob(sgbd,"IDENT_IBS","","");
|
|||
|
|
|||
|
ftextout("Identifikation Batteriesensor",0,20,1,1);
|
|||
|
INPAapiResultText(s1, "JOB_STATUS", 1,"");
|
|||
|
if (s1 != "OKAY")
|
|||
|
{
|
|||
|
messagebox("IDENT_IBS",s1);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
textout("=============================================================================================",2,0);
|
|||
|
ergebnisAusgabeTxt("BMW Teilenummer:" ,"ID_BMW_NR" ,3,0,0,30);
|
|||
|
ergebnisAusgabeTxt("Seriennummer:" ,"SERIENNUMMER" ,4,0,0,30);
|
|||
|
ergebnisAusgabeInt("Hardwareversion:" ,"HW_REF" ,5,0,0,30);
|
|||
|
ergebnisAusgabeInt("Programmstand:" ,"ZIF_PROGRAMMSTAND" ,7,0,0,30);
|
|||
|
ergebnisAusgabeInt("Programmversion:" ,"ZIF_STATUS" ,8,0,0,30);
|
|||
|
stop();
|
|||
|
}
|
|||
|
}
|
|||
|
// ************************
|
|||
|
// *** PM 2 Byte-Feld ***
|
|||
|
// ************************
|
|||
|
SCREEN s_pm_feld1()
|
|||
|
{
|
|||
|
string s1;
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_PM_INFO_1","","");
|
|||
|
|
|||
|
INPAapiResultText(s1, "JOB_STATUS", 1,"");
|
|||
|
if (s1 != "OKAY")
|
|||
|
{
|
|||
|
messagebox("PM_FELD1",s1);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
ftextout("PM Infofeld 1",0,20,1,1);
|
|||
|
ergebnisAusgabeAnalog("km Stand aktuell" , "STAT_KM_STAND_AKTUELL_WERT" , "7.2", 5, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("km Stand vor 1 Tag" , "STAT_KM_STAND_VOR_1_TAG_WERT", "7.2", 6, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("km Stand vor 2 Tagen", "STAT_KM_STAND_VOR_2_TAG_WERT", "7.2", 7, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("km Stand vor 3 Tagen", "STAT_KM_STAND_VOR_3_TAG_WERT", "7.2", 8, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("km Stand vor 4 Tagen", "STAT_KM_STAND_VOR_4_TAG_WERT", "7.2", 9, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("km Stand vor 5 Tagen", "STAT_KM_STAND_VOR_5_TAG_WERT", "7.2", 10, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog(" letzter Batterietausch bei km", "STAT_BATTERIETAUSCH_LETZTER_WERT" , "7.2",6,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("2letzter Batterietausch bei km", "STAT_BATTERIETAUSCH_ZWEITLETZTER_WERT", "7.2",7,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("3letzter Batterietausch bei km", "STAT_BATTERIETAUSCH_DRITTLETZTER_WERT", "7.2",8,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("4letzter Batterietausch bei km", "STAT_BATTERIETAUSCH_VIERTLETZTER_WERT", "7.2",9,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("5letzter Batterietausch bei km", "STAT_BATTERIETAUSCH_FUENFTLETZTER_WERT","7.2",8,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Stunden im Ladungsbereich 0 - 20", "STAT_ZEIT_IM_LADUNGSBEREICH_0_20_WERT" ,"7.2",13,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Stunden im Ladungsbereich 20 - 40", "STAT_ZEIT_IM_LADUNGSBEREICH_20_40_WERT" ,"7.2",14,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Stunden im Ladungsbereich 40 - 60", "STAT_ZEIT_IM_LADUNGSBEREICH_40_60_WERT" ,"7.2",15,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Stunden im Ladungsbereich 60 - 80", "STAT_ZEIT_IM_LADUNGSBEREICH_60_80_WERT" ,"7.2",16,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Stunden im Ladungsbereich 80 -100", "STAT_ZEIT_IM_LADUNGSBEREICH_80_100_WERT","7.2",17,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Minuten bei Temperatur bis 0" , "STAT_ZEIT_IM_TEMPERATURBEREICH_BIS_0_WERT","7.2",13, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Minuten bei Temperatur 0 - 20" , "STAT_ZEIT_IM_TEMPERATURBEREICH_0_20_WERT" ,"7.2",14, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Minuten bei Temperatur 20 - 40" , "STAT_ZEIT_IM_TEMPERATURBEREICH_20_40_WERT","7.2",15, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Minuten bei Temperatur 40 - 60" , "STAT_ZEIT_IM_TEMPERATURBEREICH_40_60_WERT","7.2",16, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Minuten bei Temperatur <20>ber 60" , "STAT_ZEIT_IM_TEMPERATURBEREICH_AB_60_WERT","7.2",17, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Batterieladung gesamte Ah", "STAT_BATTERIELADUNG_GESAMT_WERT" ,"7.2",20, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Batterieentladung gesamte Ah","STAT_BATTERIEENTLADUNG_GESAMT_WERT","7.2",20,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Batterieladung Bilanz Ah", "STAT_BATTERIELADUNG_BILANZ_WERT" ,"7.2",21, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Batterieentladung w<>hrend Motorlauf", "STAT_BATTENTLADUNG_GESAMT_BEI_MOTOR_LAEUFT_WERT" ,"7.2",21, 35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("IBS Fehler BSD Parity", "STAT_IBS_FEHLERZAEHLER_BSD_PARITY_WERT", "5.0",24, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("IBS Fehler Watchdog Reset", "STAT_IBS_FEHLERZAEHLER_WATCHDOG_RESET_WERT", "5.0",25, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("IBS Fehler Power on Reset", "STAT_IBS_FEHLERZAEHLER_POWER_ON_RESET_WERT", "5.0",26, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("KTBS Fehler BSD erweitert", "STAT_KTBS_FEHLERZAEHLER_BSD_ERWEITERT_WERT", "5.0",24,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("KTIBS Fehler BSD", "STAT_KTIBS_FEHLERZAEHLER_BSD_WERT", "5.0",25,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("KTIBS Fehler EBSD Checksumme","STAT_KTIBS_FEHLERZAEHLER_EBSD_CHECKSUMME_WERT","5.0",26,35, 0,25);
|
|||
|
delay(1000);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// ************************
|
|||
|
// *** PM 1 Byte-Feld ***
|
|||
|
// ************************
|
|||
|
SCREEN s_pm_feld2()
|
|||
|
{
|
|||
|
string s1;
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_PM_INFO_2","","");
|
|||
|
|
|||
|
INPAapiResultText(s1, "JOB_STATUS", 1,"");
|
|||
|
if (s1 != "OKAY")
|
|||
|
{
|
|||
|
messagebox("PM_FELD2",s1);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
ftextout("PM Infofeld 2",0,20,1,1);
|
|||
|
ergebnisAusgabeAnalog("Ah Q SOC aktuell" , "STAT_Q_SOC_AKTUELL_WERT" , "7.2", 3, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Ah Q SOC vor 1 Tag" , "STAT_Q_SOC_VOR_1_TAG_WERT", "7.2", 4, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Ah Q SOC vor 2 Tagen", "STAT_Q_SOC_VOR_2_TAG_WERT", "7.2", 5, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Ah Q SOC vor 3 Tagen", "STAT_Q_SOC_VOR_3_TAG_WERT", "7.2", 6, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Ah Q SOC vor 4 Tagen", "STAT_Q_SOC_VOR_4_TAG_WERT", "7.2", 7, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Ah Q SOC vor 5 Tagen", "STAT_Q_SOC_VOR_5_TAG_WERT", "7.2", 8, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("% Startf<74>higkeit aktuell" , "STAT_STARTFAEHIGKEITSGRENZE_AKTUELL_WERT" , "7.2", 3,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("% Startf<74>higkeit vor 1 Tag" , "STAT_STARTFAEHIGKEITSGRENZE_VOR_1_TAG_WERT", "7.2", 4,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("% Startf<74>higkeit vor 2 Tagen", "STAT_STARTFAEHIGKEITSGRENZE_VOR_2_TAG_WERT", "7.2", 5,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("% Startf<74>higkeit vor 3 Tagen", "STAT_STARTFAEHIGKEITSGRENZE_VOR_3_TAG_WERT", "7.2", 6,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("% Startf<74>higkeit vor 4 Tagen", "STAT_STARTFAEHIGKEITSGRENZE_VOR_4_TAG_WERT", "7.2", 7,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("% Startf<74>higkeit vor 5 Tagen", "STAT_STARTFAEHIGKEITSGRENZE_VOR_5_TAG_WERT", "7.2", 8,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("% Ladungszustand aktuell" , "STAT_LADUNGSZUSTAND_AKTUELL_WERT" , "7.2",10,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("% Ladungszustand vor 1 Tag" , "STAT_LADUNGSZUSTAND_VOR_1_TAG_WERT", "7.2",11,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("% Ladungszustand vor 2 Tagen", "STAT_LADUNGSZUSTAND_VOR_2_TAG_WERT", "7.2",12,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("% Ladungszustand vor 3 Tagen", "STAT_LADUNGSZUSTAND_VOR_3_TAG_WERT", "7.2",13,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("% Ladungszustand vor 4 Tagen", "STAT_LADUNGSZUSTAND_VOR_4_TAG_WERT", "7.2",14,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("% Ladungszustand vor 5 Tagen", "STAT_LADUNGSZUSTAND_VOR_5_TAG_WERT", "7.2",15,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Batterie Kapazit<69>t in Ah", "STAT_BATTERIE_KAPAZITAET_WERT", "7.2",10, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("SOH", "STAT_SOH_WERT", "7.2",11, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("SOC-Fit", "STAT_SOC_FIT_WERT", "7.2",12, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Saison Temperatur in <20>C", "STAT_TEMP_SAISON_WERT", "7.2",13, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("Kalibrier Ereignisse", "STAT_KALIBRIER_EVENT_CNT_WERT", "4.0",14, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("IBS Fehler Download Checksumme", "STAT_IBS_FEHLERZAEHLER_DOWNLOAD_CHECKSUMME_WERT", "4.0",17, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("IBS Fehler EEPROM Diagnose", "STAT_IBS_FEHLERZAEHLER_EEPROM_DIAGNOSE_WERT", "4.0",18, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("IBS Fehler RAM Diagnose", "STAT_IBS_FEHLERZAEHLER_RAM_DIAGNOSE_WERT", "4.0",19, 0, 0,25);
|
|||
|
ergebnisAusgabeAnalog("IBS Fehler PROM Diagnose", "STAT_IBS_FEHLERZAEHLER_PROM_DIAGNOSE_WERT", "4.0",17,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("IBS Fehler I2C NAC Diagnose", "STAT_IBS_FEHLERZAEHLER_I2C_NAC_DIAGNOSE_WERT", "4.0",18,35, 0,25);
|
|||
|
ergebnisAusgabeAnalog("IBS Fehler I2C Bus Collision", "STAT_IBS_FEHLERZAEHLER_I2C_BUS_COLLISION_WERT", "4.0",19,35, 0,25);
|
|||
|
delay(1000);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// *******************************
|
|||
|
// *** PM 1 Byte-Feld Seite 2 ***
|
|||
|
// *******************************
|
|||
|
SCREEN s_pm_feld3()
|
|||
|
{
|
|||
|
string s1;
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_PM_INFO_1","","");
|
|||
|
|
|||
|
INPAapiResultText(s1, "JOB_STATUS", 1,"");
|
|||
|
if (s1 != "OKAY")
|
|||
|
{
|
|||
|
messagebox("PM_FELD3",s1);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
ftextout("PM Infofeld 3",0,20,1,1);
|
|||
|
|
|||
|
text(3,0,"Status Ruhestrom aktuell:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_AKTUELL",1,"");
|
|||
|
ftextout(text_var,3,25,0,0);
|
|||
|
|
|||
|
text(4,0,"Status Ruhestrom vor 1 Zyklus:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_1_ZYKLUS",1,"");
|
|||
|
ftextout(text_var,4,25,0,0);
|
|||
|
|
|||
|
text(5,0,"Status Ruhestrom vor 2 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_2_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,5,25,0,0);
|
|||
|
|
|||
|
text(6,0,"Status Ruhestrom vor 3 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_3_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,6,25,0,0);
|
|||
|
|
|||
|
text(7,0,"Status Ruhestrom vor 4 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_4_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,7,25,0,0);
|
|||
|
|
|||
|
text(8,0,"Status Ruhestrom vor 5 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_5_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,8,25,0,0);
|
|||
|
|
|||
|
text(9,0,"Status Ruhestrom vor 6 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_6_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,9,25,0,0);
|
|||
|
|
|||
|
text(10,0,"Status Ruhestrom vor 7 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_7_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,10,25,0,0);
|
|||
|
|
|||
|
text(11,0,"Status Ruhestrom vor 8 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_8_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,11,25,0,0);
|
|||
|
|
|||
|
text(12,0,"Status Ruhestrom vor 9 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_9_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,12,25,0,0);
|
|||
|
|
|||
|
text(13,0,"Status Ruhestrom vor 10 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_10_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,13,25,0,0);
|
|||
|
|
|||
|
text(14,0,"Status Ruhestrom vor 11 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_11_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,14,25,0,0);
|
|||
|
|
|||
|
text(15,0,"Status Ruhestrom vor 12 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_12_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,15,25,0,0);
|
|||
|
|
|||
|
text(16,0,"Status Ruhestrom vor 13 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_13_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,16,25,0,0);
|
|||
|
|
|||
|
text(17,0,"Status Ruhestrom vor 14 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_14_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,17,25,0,0);
|
|||
|
|
|||
|
text(18,0,"Status Ruhestrom vor 15 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_15_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,18,25,0,0);
|
|||
|
|
|||
|
text(19,0,"Status Ruhestrom vor 16 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_16_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,19,25,0,0);
|
|||
|
|
|||
|
text(20,0,"Status Ruhestrom vor 17 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_17_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,20,25,0,0);
|
|||
|
|
|||
|
text(21,0,"Status Ruhestrom vor 18 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_18_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,21,25,0,0);
|
|||
|
|
|||
|
text(22,0,"Status Ruhestrom vor 19 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_19_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,22,25,0,0);
|
|||
|
|
|||
|
text(23,0,"Status Ruhestrom vor 20 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_20_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,23,25,0,0);
|
|||
|
|
|||
|
text(24,0,"Status Ruhestrom vor 21 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_21_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,24,25,0,0);
|
|||
|
|
|||
|
text(25,0,"Status Ruhestrom vor 22 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_22_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,25,25,0,0);
|
|||
|
|
|||
|
text(26,0,"Status Ruhestrom vor 23 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_23_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,26,25,0,0);
|
|||
|
|
|||
|
text(27,0,"Status Ruhestrom vor 24 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_24_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,27,25,0,0);
|
|||
|
|
|||
|
text(28,0,"Status Ruhestrom vor 25 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_25_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,28,25,0,0);
|
|||
|
|
|||
|
text(29,0,"Status Ruhestrom vor 26 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_26_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,29,25,0,0);
|
|||
|
|
|||
|
text(30,0,"Status Ruhestrom vor 27 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_27_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,30,25,0,0);
|
|||
|
|
|||
|
text(31,0,"Status Ruhestrom vor 28 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_28_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,31,25,0,0);
|
|||
|
|
|||
|
text(32,0,"Status Ruhestrom vor 29 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_29_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,32,25,0,0);
|
|||
|
|
|||
|
text(33,0,"Status Ruhestrom vor 30 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_30_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,33,25,0,0);
|
|||
|
|
|||
|
text(34,0,"Status Ruhestrom vor 31 Zyklen:");
|
|||
|
INPAapiResultText(text_var,"STAT_RUHESTROM_VOR_31_ZYKLEN",1,"");
|
|||
|
ftextout(text_var,34,25,0,0);
|
|||
|
delay(1000);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
// *************************
|
|||
|
// *** Steller Screen ***
|
|||
|
// *************************
|
|||
|
SCREEN s_steller()
|
|||
|
{
|
|||
|
|
|||
|
int z1;
|
|||
|
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
|
|||
|
ftextout(" DDE7 Stellgliedansteuerungen 1",1,0,1,0);
|
|||
|
z1=5;
|
|||
|
textout(" < F1 > Drosselklappe",z1,5);
|
|||
|
textout("< Shift > + < F1 > MIL Lampe",z1,45);z1=z1+2;
|
|||
|
textout(" < F2 > E-L<>fter",z1,5);
|
|||
|
textout("< Shift > + < F2 > <20>ldrucklampe",z1,45);z1=z1+2;
|
|||
|
textout(" < F3 > Gl<47>hrelais",z1,5);
|
|||
|
textout("< Shift > + < F3 > Nachschalld<6C>mpferklappe",z1,45);z1=z1+2;
|
|||
|
textout(" < F4 > Motorlager",z1,5);
|
|||
|
textout("< Shift > + < F4 > E Box L<>fter",z1,45);z1=z1+2;
|
|||
|
textout(" < F5 > Kraftstoffdruck-Regelventil",z1,5);
|
|||
|
textout("< Shift > + < F5 > Klimakompressor",z1,45);z1=z1+2;
|
|||
|
textout(" < F6 > Ladedrucksteller",z1,5);
|
|||
|
textout("< Shift > + < F6 > Kraftstoffpumpe CAN",z1,45);z1=z1+2;
|
|||
|
textout(" < F7 > Drallklappe",z1,5);
|
|||
|
textout("< Shift > + < F7 > Vorf<72>rderpumpe",z1,45);z1=z1+2;
|
|||
|
textout(" < F8 > Zumesseinheit",z1,5);
|
|||
|
textout("< Shift > + < F8 > Zuluftklappe",z1,45);z1=z1+2;
|
|||
|
textout(" < F9 > Abgasr<73>ckf<6B>hrung",z1,5);
|
|||
|
textout("< Shift > + < F9 > Zusatzheizer",z1,45);z1=z1+2;
|
|||
|
textout(" < F10 > Zur<75>ck",z1,5);
|
|||
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|||
|
|
|||
|
delay(50);
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// *******************************
|
|||
|
// *** Steuern Steller Screen ***
|
|||
|
// *******************************
|
|||
|
SCREEN s_steller_set()
|
|||
|
{
|
|||
|
// verwendete Globale Variablen
|
|||
|
//string steller
|
|||
|
//string st_name
|
|||
|
//int st_ein
|
|||
|
//int st_aus
|
|||
|
//string st_dim
|
|||
|
//
|
|||
|
|
|||
|
int z1;
|
|||
|
|
|||
|
st_add_label="";
|
|||
|
if(steller=="AGR") { st_name="Abgasr<73>ckf<6B>hrung"; st_aus=5; st_ein=95;st_dim="%";}
|
|||
|
if(steller=="AGRKBP") { st_name="AGR-K<>hlerBypassklappe"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="ALK") { st_name="Abluftklappe"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="BBHE") { st_name="BlowByHeizelement"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="DRA") { st_name="Drallklappe"; st_aus=5; st_ein=95;st_dim="%";}
|
|||
|
if(steller=="DRO") { st_name="Drosselklappe"; st_aus=5; st_ein=95;st_dim="%";}
|
|||
|
if(steller=="DRV") { st_name="Kraftstoffdruck-Regelventil"; st_aus=6; st_ein=76;st_dim="%";}
|
|||
|
if(steller=="EBX") { st_name="E-BoxL<78>fter"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="ELU") { st_name="Motorl<72>fter"; st_aus=8; st_ein=93;st_dim="%";}
|
|||
|
if(steller=="GLU") { st_name="Gl<47>hrelais"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="KFH") { st_name="Heizungf<67>rKraftstofffilter"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="KLI") { st_name="Klimakompressor"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="KPC") { st_name="Kraftstoffpumpe-CAN"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="LDS") { st_name="Ladedrucksteller"; st_aus=5; st_ein=95;st_dim="%";}
|
|||
|
if(steller=="LDSND") { st_name="LadedruckstellerNiederdruck"; st_aus=5; st_ein=95;st_dim="%";}
|
|||
|
if(steller=="MILA") { st_name="MIL-Lampe"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="MLA") { st_name="Motorlager"; st_aus=5; st_ein=95;st_dim="%";}
|
|||
|
if(steller=="MRV") { st_name="Zumesseinheit"; st_aus=5; st_ein=95;st_dim="%";}
|
|||
|
if(steller=="MSA") { st_name="Motorstartautomatik"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="NSK") { st_name="Nachschalld<6C>mpferklappe"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="OILA") { st_name="<22>ldrucklampe"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="STA") { st_name="Starter"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="SYSLA") { st_name="Systemlampe"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="UASCR") { st_name="Elektr.UmschaltventilamAktivtank(SCR)"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="PASCR") { st_name="Pumpe-Aktivtank(SCR)"; st_aus=5; st_ein=95;st_dim="%";}
|
|||
|
if(steller=="PPSCR") { st_name="Pumpe-Passivtank(SCR)"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="DVSCR") { st_name="DosierventilinderAGA(SCR)"; st_aus=5; st_ein=95;st_dim="%";}
|
|||
|
if(steller=="HKT") { st_name="Heizkreis Aktivtank(SCR)"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="HKDL") { st_name="Heizkreis-Dosierleitung(SCR)"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="VBP") { st_name="Verdichterbypass"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="VFP") { st_name="Vorf<72>rderpumpe"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
if(steller=="ZLK") { st_name="Zuluftklappe"; st_aus=5; st_ein=94;st_dim="%";}
|
|||
|
if(steller=="ZUH") { st_name="Zusatzheizer"; st_aus=0; st_ein=1;st_dim="-";}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
ftextout("Stelleransteuerung " + st_name,1,0,1,0);
|
|||
|
z1=5;
|
|||
|
textout(" < F1 > Ansteuerung ein",z1,5);z1=z1+1;
|
|||
|
textout(" < F2 > Ansteuerung aus",z1,5);z1=z1+1;
|
|||
|
textout(" < F3 > Ansteuerung manuell",z1,5);z1=z1+1;
|
|||
|
textout(" < F4 > Ansteuerung zur<75>ck an DDE",z1,5);z1=z1+2;
|
|||
|
textout(" < F10 > Zur<75>ck",z1,5);
|
|||
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|||
|
steller_ansteuer(steller,0xFE);
|
|||
|
delay(50);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
SCREEN s_steller_scr()
|
|||
|
{
|
|||
|
|
|||
|
int z1;
|
|||
|
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
|
|||
|
ftextout(" DDE7 SCR Stellgliedansteuerungen",1,0,1,0);
|
|||
|
z1=5;
|
|||
|
textout(" < F1 > Umschaltventil",z1,5);
|
|||
|
z1=z1+2;
|
|||
|
textout(" < F2 > Pumpe Aktivtank",z1,5);
|
|||
|
z1=z1+2;
|
|||
|
textout(" < F3 > Pumpe Passivtank",z1,5);
|
|||
|
z1=z1+2;
|
|||
|
textout(" < F4 > Dosierventil",z1,5);
|
|||
|
z1=z1+2;
|
|||
|
// textout(" < F5 > Heizer Heizerrelais",z1,5);
|
|||
|
// z1=z1+2;
|
|||
|
textout(" < F5 > Heizer Druckleitung",z1,5);
|
|||
|
z1=z1+2;
|
|||
|
textout(" < F6 > Heizerkreis-Tank",z1,5);
|
|||
|
z1=z1+3;
|
|||
|
textout(" < F10 > Zur<75>ck",z1,5);
|
|||
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|||
|
|
|||
|
delay(50);
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// *******************************
|
|||
|
// *** Steuern Steller Screen ***
|
|||
|
// *******************************
|
|||
|
SCREEN s_steller_scr_set()
|
|||
|
{
|
|||
|
// verwendete Globale Variablen
|
|||
|
//string steller
|
|||
|
//string st_name
|
|||
|
//int st_ein
|
|||
|
//int st_aus
|
|||
|
//
|
|||
|
|
|||
|
int z1;
|
|||
|
|
|||
|
|
|||
|
|
|||
|
if(steller=="UASCR") { st_name="Elektr. Umschaltventil am Aktivtank"; st_aus=0; st_ein=1;st_dim="-";st_add_label="CoSCR_st;SCR_pUPmpP;URevVlv_st;URevVlv_stPs";}
|
|||
|
if(steller=="PASCR") { st_name="Pumpe-Aktivtank"; st_aus=6; st_ein=80;st_dim="%";st_add_label="CoSCR_st;SCR_pUPmpP;SCR_rUTnkLvl;SCR_uRawUPmpP;UPmpMot_r;UPmpMot_rPs;URevVlv_st;URevVlv_stPs";}
|
|||
|
if(steller=="PPSCR") { st_name="Pumpe-Passivtank"; st_aus=0; st_ein=1;st_dim="-";st_add_label="SCR_pUPmpP;SCR_rRawUPasTnkLvl;SCR_rUPasTnkLvl;UPmpReFl_rPs;UPmpReFl_st";}
|
|||
|
if(steller=="DVSCR") { st_name="Dosierventil in der AGA"; st_aus=5; st_ein=95;st_dim="%";st_add_label="CoSCR_st;Exh_stNOxSensDiaEnaNoCat2Ds;Exh_stNOxSensDiaEnaNSCDs;SCR_uRawUCatUsT;UDC_dmRdcAgDos;UDosVlv_rDyc;UDosVlv_rPs";}
|
|||
|
//if(steller=="HKHR") { st_name="Heizkreis-Heizerrelais"; st_aus=0; st_ein=1;st_dim="-";st_add_label="UHC_iPLSensDia_mp;UHC_iTnkSensDia_mp;UHC_iToT;UHC_stCReq;UHtrPL_st;UHtrPL_stPs;UHtrTnk_st;UHtrTnk_stPs";}
|
|||
|
if(steller=="HKDL") { st_name="Heizkreis-Druckleitung"; st_aus=0; st_ein=1;st_dim="-";st_add_label="UHC_iPLSensDia_mp;UHC_iTnkSensDia_mp;UHC_iToT;UHC_stCReq;UHC_stCtl;UHtrPL_st;UHtrPL_stPs";}
|
|||
|
if(steller=="HKT") { st_name="Heizkreis-Tank"; st_aus=0; st_ein=1;st_dim="-";st_add_label="UHC_iPLSensDia_mp;UHC_iTnkSensDia_mp;UHC_iToT;UHC_stCReq;UHC_stCtl;SCR_tUTnkT;SCR_uRawUTnkT;UHtrTnk_st;UHtrTnk_stPs";}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
ftextout("Stelleransteuerung " + st_name,1,0,1,0);
|
|||
|
z1=5;
|
|||
|
textout(" < F1 > Ansteuerung ein",z1,5);z1=z1+1;
|
|||
|
textout(" < F2 > Ansteuerung aus",z1,5);z1=z1+1;
|
|||
|
textout(" < F3 > Ansteuerung manuell",z1,5);z1=z1+1;
|
|||
|
textout(" < F4 > Ansteuerung zur<75>ck an DDE",z1,5);z1=z1+2;
|
|||
|
textout(" < F10 > Zur<75>ck",z1,5);
|
|||
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|||
|
steller_ansteuer(steller,0xFE);
|
|||
|
delay(50);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
// *****************************
|
|||
|
// *** LL-Erh<72>hung setzen ***
|
|||
|
// *****************************
|
|||
|
SCREEN s_system_llerh()
|
|||
|
{
|
|||
|
string temp;
|
|||
|
string s1;
|
|||
|
string hilfe;
|
|||
|
|
|||
|
ftextout("Systemtest LL-Drehzahl verstellen",0,15,1,1);
|
|||
|
textout("=========================================================================================",2,0);
|
|||
|
if ((Diag_Index=="18")||(Diag_Index=="33")||(Diag_Index=="49"))
|
|||
|
{
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MOTORDREHZAHL","","");
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 != "OKAY"){ messagebox("STATUS_MOTORDREHZAHL",s1); }
|
|||
|
s1 = "LL - Istwert";
|
|||
|
ftextout(s1,10,10,1,1);
|
|||
|
INPAapiResultInt(ll_wert,"STAT_MOTORDREHZAHL_WERT",1);
|
|||
|
inttostring(ll_wert,temp);
|
|||
|
ftextout(blank,12,0,1,1);
|
|||
|
ftextout(temp,12,15,1,1);
|
|||
|
|
|||
|
INPAapiJob(sgbd,"ABGLEICH_LESEN","LLABS","");
|
|||
|
s1 = "LL - Sollwert";
|
|||
|
ftextout(s1,10,40,1,1);
|
|||
|
INPAapiResultInt(ll_wert,"ABGLEICH_LESEN_WERT",1);
|
|||
|
inttostring(ll_wert,temp);
|
|||
|
ftextout(temp,12,45,1,1);
|
|||
|
|
|||
|
delay(200);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MOTORDREHZAHL","","");
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 != "OKAY"){ messagebox("STATUS_MOTORDREHZAHL",s1); }
|
|||
|
s1 = "LL - Istwert";
|
|||
|
ftextout(s1,10,10,1,1);
|
|||
|
INPAapiResultInt(ll_wert,"STAT_MOTORDREHZAHL_WERT",1);
|
|||
|
inttostring(ll_wert,temp);
|
|||
|
ftextout(blank,12,0,1,1);
|
|||
|
ftextout(temp,12,15,1,1);
|
|||
|
|
|||
|
INPAapiJob(sgbd,"ABGLEICH_LESEN","LLA","");
|
|||
|
s1 = "LL - Offset";
|
|||
|
ftextout(s1,10,40,1,1);
|
|||
|
INPAapiResultInt(ll_wert,"ABGLEICH_LESEN_WERT",1);
|
|||
|
inttostring(ll_wert,temp);
|
|||
|
ftextout(temp,12,45,1,1);
|
|||
|
|
|||
|
delay(200);
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
//*******************************************
|
|||
|
//** Ende LL-Drehzahl verstellen *****
|
|||
|
//*******************************************
|
|||
|
SCREEN s_system_llerh_stop()
|
|||
|
{
|
|||
|
string s1;
|
|||
|
string temp;
|
|||
|
|
|||
|
if ((Diag_Index=="18")||(Diag_Index=="33")||(Diag_Index=="49"))
|
|||
|
{
|
|||
|
|
|||
|
INPAapiJob(sgbd,"ABGLEICH_VERSTELLEN","LLABS;0","");
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 != "OKAY") { messagebox("STOP ABGLEICH_VERSTELLEN",s1); stop(); }
|
|||
|
|
|||
|
INPAapiJob(sgbd,"ABGLEICH_LESEN","LLABS","");
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 != "OKAY")
|
|||
|
{
|
|||
|
messagebox("ABGLEICH_LESEN_WERT",s1);
|
|||
|
}
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MOTORDREHZAHL","","");
|
|||
|
ftextout("Aktueller LL Istwert",10,10,1,1);
|
|||
|
INPAapiResultInt(ll_wert,"STAT_MOTORDREHZAHL_WERT",1);
|
|||
|
inttostring(ll_wert,temp);
|
|||
|
ftextout(blank,12,0,1,1);
|
|||
|
ftextout(temp,12,15,1,1);
|
|||
|
|
|||
|
|
|||
|
INPAapiJob(sgbd,"ABGLEICH_LESEN","LLABS","");
|
|||
|
ftextout("Aktuelle LL Vorgabe",10,40,1,1);
|
|||
|
INPAapiResultInt(ll_wert,"ABGLEICH_LESEN_WERT",1);
|
|||
|
inttostring(ll_wert,temp);
|
|||
|
ftextout(temp,12,45,1,1);
|
|||
|
|
|||
|
stop();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
|
|||
|
INPAapiJob(sgbd,"ABGLEICH_VERSTELLEN","LLA;0","");
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 != "OKAY") { messagebox("STOP ABGLEICH_VERSTELLEN",s1); stop(); }
|
|||
|
|
|||
|
INPAapiJob(sgbd,"ABGLEICH_LESEN","LLA","");
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 != "OKAY")
|
|||
|
{
|
|||
|
messagebox("ABGLEICH_LESEN_WERT",s1);
|
|||
|
}
|
|||
|
//INPAapiResultText(s1,"Aktuelle Drehzahl",1,"");
|
|||
|
ftextout(blank,10,0,1,1);
|
|||
|
ftextout("Aktuelles LL Offset",10,10,1,1);
|
|||
|
INPAapiResultInt(ll_wert,"ABGLEICH_LESEN_WERT",1);
|
|||
|
inttostring(ll_wert,s1);
|
|||
|
ftextout(blank,12,0,1,1);
|
|||
|
ftextout(s1,12,15,1,1);
|
|||
|
|
|||
|
stop();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
// *************************
|
|||
|
// *** IMA-Screen ***
|
|||
|
// *************************
|
|||
|
SCREEN s_ima()
|
|||
|
{
|
|||
|
string zyl1;
|
|||
|
ftextout("Injektorwerte lesen",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
logik_var=TRUE;
|
|||
|
if(logik_var)
|
|||
|
{
|
|||
|
|
|||
|
INPAapiJob(sgbd,"ABGLEICH_IMA_LESEN","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultText(zyl1,"ABGLEICH_IMA_WERT_ZYL1",1,"");
|
|||
|
if (zyl1 == "AAAAAAA")
|
|||
|
{
|
|||
|
setitem(3,"",FALSE);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
setitem(3,"IMA <20>ndern",TRUE);
|
|||
|
}
|
|||
|
setitem(2,"",FALSE);
|
|||
|
//IMA Werte anzeigen f<>r Zyl. 1
|
|||
|
text(5,5,"Zylinder 1:");
|
|||
|
INPAapiResultText(text_var,"ABGLEICH_IMA_WERT_ZYL1",1,"");
|
|||
|
textout( text_var,5,15);
|
|||
|
|
|||
|
//IMA Werte anzeigen f<>r Zyl. 2
|
|||
|
text(5,45,"Zylinder 2:");
|
|||
|
INPAapiResultText(text_var,"ABGLEICH_IMA_WERT_ZYL2",1,"");
|
|||
|
textout(text_var,5,55);
|
|||
|
|
|||
|
//IMA Werte anzeigen f<>r Zyl. 3
|
|||
|
text(10,5,"Zylinder 3:");
|
|||
|
INPAapiResultText(text_var,"ABGLEICH_IMA_WERT_ZYL3",1,"");
|
|||
|
textout(text_var,10,15);
|
|||
|
|
|||
|
//IMA Werte anzeigen f<>r Zyl. 4
|
|||
|
text(10,45,"Zylinder 4:");
|
|||
|
INPAapiResultText(text_var,"ABGLEICH_IMA_WERT_ZYL4",1,"");
|
|||
|
textout(text_var,10,55);
|
|||
|
|
|||
|
//IMA Werte anzeigen f<>r Zyl. 5
|
|||
|
text(15,5,"Zylinder 5:");
|
|||
|
INPAapiResultText(text_var,"ABGLEICH_IMA_WERT_ZYL5",1,"");
|
|||
|
textout(text_var,15,15);
|
|||
|
|
|||
|
//IMA Werte anzeigen f<>r Zyl. 6
|
|||
|
text(15,45,"Zylinder 6:");
|
|||
|
INPAapiResultText(text_var,"ABGLEICH_IMA_WERT_ZYL6",1,"");
|
|||
|
textout(text_var,15,55);
|
|||
|
|
|||
|
textout("< F1 > IMA-Werte f<>r alle Zylinder schreiben",22,5);
|
|||
|
if (zyl1 != "AAAAAAA")
|
|||
|
{
|
|||
|
textout("< F3 > IMA-Wert f<>r einzelnen Zylinder schreiben",24,5);
|
|||
|
}
|
|||
|
|
|||
|
stop();
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
setitem(1,"",FALSE);
|
|||
|
setitem(3,"",FALSE);
|
|||
|
inputdigital(logik_var, "IMA Flag setzen","IMA Flag noch nicht gesetzt","Flag nicht setzen","Flag jetzt setzen");
|
|||
|
getinputstate(ganz_zahl);
|
|||
|
if(ganz_zahl == 0 && logik_var==TRUE)
|
|||
|
{
|
|||
|
INPAapiJob(sgbd,"ABGLEICH_IMA_ABGLEICHFLAG_VORGEBEN","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiJob(sgbd,"ABGLEICH_IMA_ABGLEICHFLAG_PROGRAMMIEREN","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultText(text_var,"JOB_STATUS",1,"");
|
|||
|
if(text_var == "OKAY") { messagebox("IMA Abgleichflag","Abgleichflag gesetzt"); }
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
textout("Injektorwerte noch nicht programmiert",3,3);
|
|||
|
textout("Um Injektorwerte zu programmieren, zun<75>chst Flag mit < F2 > setzen",5,3);
|
|||
|
stop();
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
// *********************
|
|||
|
// *** CBS Hauptmenu ***
|
|||
|
// *********************
|
|||
|
|
|||
|
|
|||
|
|
|||
|
SCREEN s_main_cbs()
|
|||
|
{
|
|||
|
ftextout("CBS-Daten",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
|
|||
|
LINE("","") {
|
|||
|
|
|||
|
//CBS Daten auslesen
|
|||
|
INPAapiJob(sgbd,"CBS_DATEN_LESEN","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
|
|||
|
|
|||
|
|
|||
|
text(5,5,"CBS-Wert OEL in %:");
|
|||
|
INPAapiResultText(text_var,"AVAI_CBS_WERT_OEL",1,"");
|
|||
|
textout( text_var,5,30);
|
|||
|
|
|||
|
text(5,43,"CBS-Wert Bremsfl<66>ssigkeit in %:");
|
|||
|
INPAapiResultText(text_var,"AVAI_CBS_WERT_BRFL",1,"");
|
|||
|
textout( text_var,5,63);
|
|||
|
|
|||
|
text(7,5,"Restlaufleistung:");
|
|||
|
INPAapiResultText(text_var,"RMMI_CBS_WERT",1,"");
|
|||
|
textout(text_var,7,30);
|
|||
|
INPAapiResultText(text_var,"RMMI_CBS_EINH",1,"");
|
|||
|
textout(text_var,7,34);
|
|||
|
|
|||
|
text(7,43,"CBS-Wert ZKRZ in %:");
|
|||
|
INPAapiResultText(text_var,"AVAI_CBS_WERT_ZKRZ",1,"");
|
|||
|
textout( text_var,7,63);
|
|||
|
|
|||
|
text(9,5,"Verf<72>gbarkeit BATT in %:");
|
|||
|
INPAapiResultText(text_var,"AVAI_CBS_WERT_BATT",1,"");
|
|||
|
textout(text_var,9,30);
|
|||
|
|
|||
|
text(9,43,"CBS-Wert SIC in %:");
|
|||
|
INPAapiResultText(text_var,"AVAI_CBS_WERT_SIC",1,"");
|
|||
|
textout( text_var,9,63);
|
|||
|
|
|||
|
text(11,5,"CBS-Wert Partikelfilter in %:");
|
|||
|
INPAapiResultText(text_var,"AVAI_CBS_WERT_CSF",1,"");
|
|||
|
textout(text_var,10,30);
|
|||
|
|
|||
|
text(11,43,"CBS-Wert FKL in %:");
|
|||
|
INPAapiResultText(text_var,"AVAI_CBS_WERT_KFL",1,"");
|
|||
|
textout( text_var,11,63);
|
|||
|
|
|||
|
text(13,5,"CBS-Wert VTG in %:");
|
|||
|
INPAapiResultText(text_var,"AVAI_CBS_WERT_VTG",1,"");
|
|||
|
textout(text_var,13,30);
|
|||
|
|
|||
|
text(13,43,"CBS-Wert UEB in %:");
|
|||
|
INPAapiResultText(text_var,"AVAI_CBS_WERT_UEB",1,"");
|
|||
|
textout( text_var,13,63);
|
|||
|
|
|||
|
text(15,5,"CBS-Wert Bremse vorn in %:");
|
|||
|
INPAapiResultText(text_var,"AVAI_CBS_WERT_BR_V",1,"");
|
|||
|
textout(text_var,15,30);
|
|||
|
|
|||
|
text(15,43,"CBS-Wert Bremse hinten in %:");
|
|||
|
INPAapiResultText(text_var,"AVAI_CBS_WERT_BR_H",1,"");
|
|||
|
textout(text_var,15,63);
|
|||
|
|
|||
|
text(17,5,"CBS-Wert Filter in %:");
|
|||
|
INPAapiResultText(text_var,"AVAI_CBS_WERT_FILT",1,"");
|
|||
|
textout(text_var,17,30);
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
// *********************************
|
|||
|
// *** Screen Systemdiagnose GLF ***
|
|||
|
// *********************************
|
|||
|
SCREEN s_systemtest_glf()
|
|||
|
{
|
|||
|
string s1, s2;
|
|||
|
int status = 255;
|
|||
|
|
|||
|
ftextout("Systemtest Gesteuerte Luftf<74>hrung",0,1,1,1);
|
|||
|
textout(" ",2,0);
|
|||
|
textout(" < F1 > Start Systemtest GLF",3,5);
|
|||
|
textout(" < F2 > Stop Systemtest GLF",4,5);
|
|||
|
textout(" < F10 > Zur<75>ck",5,5);
|
|||
|
textout("< Shift > + < F10 > INPA beenden", 5,43);
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_GLF","","");
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 != "OKAY")
|
|||
|
{
|
|||
|
messagebox("STATUS_SYSTEMCHECK_GLF",s1);
|
|||
|
stop();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
textout(" ",8,0);
|
|||
|
INPAapiResultText(s1,"STAT_SYSTEMCHECK_GLF_TEXT",1,"");
|
|||
|
textout("=== Status Systemcheck ===", 7,0);
|
|||
|
textout(s1,8,0);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
// *********************************
|
|||
|
// *** Screen Systemdiagnose IGR ***
|
|||
|
// *********************************
|
|||
|
SCREEN s_systemtest_igr()
|
|||
|
{
|
|||
|
string s1, s2;
|
|||
|
int status = 255;
|
|||
|
|
|||
|
ftextout("Systemtest IGR deaktivieren",0,1,1,1);
|
|||
|
textout(" ",2,0);
|
|||
|
textout(" < F1 > Start Systemtest IGR",3,5);
|
|||
|
textout(" < F2 > Stop Systemtest IGR",4,5);
|
|||
|
textout(" < F10 > Zur<75>ck",5,5);
|
|||
|
textout("< Shift > + < F10 > INPA beenden", 5,43);
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_SYSTEMCHECK_IGR_AUS","","");
|
|||
|
INPAapiResultText(s1,"JOB_STATUS",1,"");
|
|||
|
if (s1 != "OKAY")
|
|||
|
{
|
|||
|
messagebox("STATUS_SYSTEMCHECK_IGR_AUS",s1);
|
|||
|
stop();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
textout(" ",8,0);
|
|||
|
INPAapiResultText(s1,"STAT_SYSTEMCHECK_IGR_TEXT",1,"");
|
|||
|
textout("=== Status Systemcheck ===", 7,0);
|
|||
|
textout(s1,8,0);
|
|||
|
}
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
// ***************************
|
|||
|
// *** EWS-Screen ***
|
|||
|
// ***************************
|
|||
|
SCREEN s_ews()
|
|||
|
{
|
|||
|
ftextout("EWS4" ,3,20,1,1);
|
|||
|
|
|||
|
textout("< F1 > Status" ,12,5);
|
|||
|
textout("< F2 > Status Sekret-Key" ,13,5);
|
|||
|
//textout("< F3 > EWS Data schreiben" ,15,5);
|
|||
|
textout("< F10> Zur<75>ck" ,18,5);
|
|||
|
textout("< Shift > + < F10> Ende" ,18,45);
|
|||
|
stop();
|
|||
|
}
|
|||
|
|
|||
|
SCREEN s_ews_status()
|
|||
|
{
|
|||
|
string temp;
|
|||
|
ftextout("Status EWS",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
INPAapiJob(sgbd,"STATUS_EWS","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"SG beherrscht EWS 3");
|
|||
|
|
|||
|
INPAapiResultDigital(logik_var,"STAT_EWS3_CAPABLE",1);
|
|||
|
digitalout(logik_var,3,1,"JA","NEIN");
|
|||
|
|
|||
|
text(1,43,"SG beherrscht EWS 4");
|
|||
|
|
|||
|
INPAapiResultDigital(logik_var,"STAT_EWS4_CAPABLE",1);
|
|||
|
digitalout(logik_var,3,41,"JA","NEIN");
|
|||
|
}
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"EWS 3 aktiv");
|
|||
|
|
|||
|
INPAapiResultDigital(logik_var,"STAT_EWS3_ACTIVE",1);
|
|||
|
digitalout(logik_var,3,1,"JA","NEIN");
|
|||
|
|
|||
|
text(1,43,"EWS 4 aktiv");
|
|||
|
|
|||
|
INPAapiResultDigital(logik_var,"STAT_EWS4_ACTIVE",1);
|
|||
|
digitalout(logik_var,3,41,"JA","NEIN");
|
|||
|
}
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"EWS 4 Server secret key locked");
|
|||
|
|
|||
|
INPAapiResultDigital(logik_var,"STAT_EWS4_SERVER_SK_LOCKED",1);
|
|||
|
digitalout(logik_var,3,1,"JA","NEIN");
|
|||
|
|
|||
|
text(1,43,"EWS 4 client secret key locked");
|
|||
|
|
|||
|
INPAapiResultDigital(logik_var,"STAT_EWS4_CLIENT_SK_LOCKED",1);
|
|||
|
digitalout(logik_var,3,41,"JA","NEIN");
|
|||
|
}
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"Status Authentifizierung");
|
|||
|
|
|||
|
INPAapiResultInt(ganz_zahl,"STAT_CLIENT_AUTHENTICATED",1);
|
|||
|
inttostring(ganz_zahl,temp);
|
|||
|
|
|||
|
INPAapiResultText(text_var,"STAT_CLIENT_AUTHENTICATED_TXT",1,"");
|
|||
|
ftextout(blank,3,0,0,2);
|
|||
|
ftextout(temp + ": " + text_var,3,0,0,2);
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
SCREEN s_ews_status_sk()
|
|||
|
{
|
|||
|
string strData;
|
|||
|
int intDataLen;
|
|||
|
ftextout("Status EWS - Secret Key",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
INPAapiJob(sgbd,"STATUS_EWS4_SK","","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
LINE("","") {
|
|||
|
text(1,0,"SecretKey Server");
|
|||
|
|
|||
|
INPAapiResultBinary("STAT_EWS4_SERVER_SK",1);
|
|||
|
GetBinaryDataString(strData, intDataLen);
|
|||
|
ftextout(strData,3,1,0,2);
|
|||
|
|
|||
|
text(1,43,"SecretKey Client");
|
|||
|
|
|||
|
INPAapiResultBinary("STAT_EWS4_CLIENT_SK",1);
|
|||
|
GetBinaryDataString(strData, intDataLen);
|
|||
|
ftextout(strData,3,44,0,2);
|
|||
|
}
|
|||
|
}
|
|||
|
// *******************************
|
|||
|
// *** dyn Messwertblock lesen ***
|
|||
|
// *******************************
|
|||
|
SCREEN s_fdyn()
|
|||
|
{
|
|||
|
int i_temp_1, i_temp_2;
|
|||
|
int laenge,anfang,pos1,pos1_alt,pos2,pos2_alt;
|
|||
|
bool b1;
|
|||
|
string vartext1,result,label,fileline1,fileline,templine;
|
|||
|
string s_inhalt1,s_inhalt2,time;
|
|||
|
string s1, s2, s3 = "", s4 = "", s5, s6, s_temp;
|
|||
|
long t_offset = 0,count;
|
|||
|
real rtime;
|
|||
|
|
|||
|
if ( datei_ddli == "" )
|
|||
|
{
|
|||
|
s1 = "C:\EC-Apps\INPA\source\DDLI_DDE7.TXT"; // Definition des Quellpfades f<>r DDLI-Liste; Pfad und Dateiname d<>rfen nicht ver<65>ndert werden, sonst funktioniert es nicht mehr
|
|||
|
fileopen ( s1, "a" ); // Datei <20>ffnen um Daten anzuh<75>ngen, wenn Datei noch nicht vorhanden, dann Datei anlegen mit leerem Inhalt
|
|||
|
filewrite(s3); // Inhalt von s3 wird angeh<65>ngt (in diesem Falle ist s3 leer, somit werden keine neuen UW-ID angeh<65>ngt)
|
|||
|
fileclose();
|
|||
|
|
|||
|
fileopen( s1, "r" ); // Datei <20>ffnen um zu lesen
|
|||
|
fileread( s_inhalt1, logik_var ); // Auslesen des Dateiinhalts
|
|||
|
|
|||
|
if ( s_inhalt1 == "" ) // wenn Dateiinhalt leer, dann Aufforderung um neue DDLI-Werte einzugeben
|
|||
|
{
|
|||
|
inputtext( s1, "DDLI-Liste anlegen?","Dateiname und Pfad nicht ab<61>ndern (Pfad muss bereits existieren)!");
|
|||
|
getinputstate( i_temp_1 ); // 0 = OK 1 = Abbruch
|
|||
|
inputstate = i_temp_1; // Abbruch merken
|
|||
|
if ( i_temp_1 == 0 )
|
|||
|
{
|
|||
|
fileopen ( s1, "w" ); // Datei <20>ffne um zu schreiben
|
|||
|
inputtext( s3, "DDLI-Werte definieren?","Labels aus Messwertetabelle (z.B.: Epm_nEng;AFS_dm)! Trennzeichen = ';'");
|
|||
|
getinputstate( i_temp_1 ); // 0 = OK 1 = Abbruch
|
|||
|
inputstate = i_temp_1; // Abbruch merken
|
|||
|
|
|||
|
if ( i_temp_1 == 0 )
|
|||
|
{
|
|||
|
inputtext( s4, "DDLI-Werte definieren?","F<>r die Labels "+s3+" ben<65>tigte Results (z.B.: STAT_MOTORDREHZAHL;STAT_LUFTMASSE)!");
|
|||
|
getinputstate( i_temp_2);
|
|||
|
inputstate = i_temp_2;
|
|||
|
filewrite(s3); // DDLI-Werte speichern
|
|||
|
filewrite(s4);
|
|||
|
fileclose();
|
|||
|
datei_ddli = s1; // Datei angelegt, Namen merken
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
blankscreen();
|
|||
|
stop();
|
|||
|
}
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
blankscreen();
|
|||
|
stop();
|
|||
|
}
|
|||
|
}
|
|||
|
else // wenn Datei nicht leer, dann <20>bergabe des Quellpfades an datei_ddl
|
|||
|
{
|
|||
|
datei_ddli = s1; // Datei angelegt, Namen merken
|
|||
|
}
|
|||
|
|
|||
|
datei_rec = "C:\EC-Apps\INPA\source\Messwerte.TXT";
|
|||
|
inputtext( datei_rec, "Datei f<>r Messwertaufzeichnung","Dateiname und Pfad angeben (Pfad muss bereits existieren, Datei wird gel<65>scht)!");
|
|||
|
fileopen( datei_rec, "w" ); // bereits bestehende Messwertdatei wird gel<65>scht
|
|||
|
filewrite("");
|
|||
|
fileclose();
|
|||
|
|
|||
|
|
|||
|
fileopen( datei_ddli, "r" ); // datei_ddli <20>ffnen und Werte auslesen
|
|||
|
fileread( s_inhalt1, logik_var );
|
|||
|
ftextout("DDLI-Block",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","5;"+s_inhalt1,"");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
|
|||
|
delay(500);
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
|
|||
|
fileopen( datei_ddli, "r" );
|
|||
|
fileread( s_inhalt1, logik_var );
|
|||
|
if ( s_inhalt1 == "" )
|
|||
|
{
|
|||
|
blankscreen();
|
|||
|
stop();
|
|||
|
}
|
|||
|
else
|
|||
|
{
|
|||
|
ftextout("DDLI-Block",1,0,1,0);
|
|||
|
ftextout("",3,0,0,0);
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","5;"+s_inhalt1,"");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
|
|||
|
delay(500);
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
blankscreen();
|
|||
|
|
|||
|
LINE("Wert0, Wert1","")
|
|||
|
{
|
|||
|
fileread( s_inhalt2, logik_var );
|
|||
|
fileclose();
|
|||
|
strlen(laenge,s_inhalt2);
|
|||
|
|
|||
|
// Lan: Korr.auf sp<73>test m<>gliche Position vor erstem Lesevorgang (Beginn)
|
|||
|
if (t_offset == 0)
|
|||
|
{
|
|||
|
gettickcount(t_offset);
|
|||
|
}
|
|||
|
// Lan: Korr.auf sp<73>test m<>gliche Position vor erstem Lesevorgang (Ende)
|
|||
|
|
|||
|
if( laenge > 0 )
|
|||
|
{
|
|||
|
instr(pos2,0,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,0,pos2);
|
|||
|
else
|
|||
|
result=s_inhalt2;
|
|||
|
|
|||
|
instr(pos1,0,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,0,pos1);
|
|||
|
else
|
|||
|
label=s_inhalt1;
|
|||
|
|
|||
|
|
|||
|
templine = "Time";
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,0,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,10,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
gettickcount(count); count = count - t_offset; longtoreal(count,rtime); realtostring(rtime,"10.0",time);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
fileline = time + ";" + vartext1;
|
|||
|
|
|||
|
ftextout(vartext1,1,0,0,0);
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,20,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,30,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,20,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,40,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,50,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,40,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,60,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,70,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,60,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
LINE("Wert2,3","")
|
|||
|
{
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,0,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,10,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
gettickcount(count); count = count - t_offset; longtoreal(count,rtime); realtostring(rtime,"10.0",time);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
|
|||
|
ftextout(vartext1,1,0,0,0);
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,20,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,30,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,20,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,40,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,50,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,40,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,60,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,70,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,60,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
LINE("Wert4,5","")
|
|||
|
{
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,0,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,10,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
gettickcount(count); count = count - t_offset; longtoreal(count,rtime); realtostring(rtime,"10.0",time);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
|
|||
|
ftextout(vartext1,1,0,0,0);
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,20,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,30,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,20,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,40,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,50,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,40,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,60,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,70,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,60,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
}
|
|||
|
LINE("Wert6,7","")
|
|||
|
{
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,0,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,10,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
gettickcount(count); count = count - t_offset; longtoreal(count,rtime); realtostring(rtime,"10.0",time);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
|
|||
|
ftextout(vartext1,1,0,0,0);
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,20,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,30,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,20,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,40,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,50,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,40,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,60,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,70,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,60,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
LINE("Wert8,9","")
|
|||
|
{
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,0,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,10,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
gettickcount(count); count = count - t_offset; longtoreal(count,rtime); realtostring(rtime,"10.0",time);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
|
|||
|
ftextout(vartext1,1,0,0,0);
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,20,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,30,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,20,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,40,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,50,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,40,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,60,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,70,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,60,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
LINE("Wert10,11","")
|
|||
|
{
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,0,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,10,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
gettickcount(count); count = count - t_offset; longtoreal(count,rtime); realtostring(rtime,"10.0",time);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
|
|||
|
ftextout(vartext1,1,0,0,0);
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,20,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,30,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,20,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,40,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,50,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,40,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,60,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,70,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,60,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
LINE("Wert13,14","")
|
|||
|
{
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,0,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,10,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
gettickcount(count); count = count - t_offset; longtoreal(count,rtime); realtostring(rtime,"10.0",time);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
|
|||
|
ftextout(vartext1,1,0,0,0);
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,20,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,30,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,20,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,40,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,50,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,40,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,60,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,70,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,60,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
LINE("Wert15,16","")
|
|||
|
{
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,0,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,10,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
gettickcount(count); count = count - t_offset; longtoreal(count,rtime); realtostring(rtime,"10.0",time);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
|
|||
|
ftextout(vartext1,1,0,0,0);
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,20,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,30,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,20,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,40,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,50,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,40,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,60,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,70,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,60,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
LINE("Wert17,18","")
|
|||
|
{
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,0,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,10,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
gettickcount(count); count = count - t_offset; longtoreal(count,rtime); realtostring(rtime,"10.0",time);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
|
|||
|
ftextout(vartext1,1,0,0,0);
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,20,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,30,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,20,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,40,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,50,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,40,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,60,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,70,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,60,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
}
|
|||
|
|
|||
|
LINE("Wert19,20","")
|
|||
|
{
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,0,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,10,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
gettickcount(count); count = count - t_offset; longtoreal(count,rtime); realtostring(rtime,"10.0",time);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
|
|||
|
ftextout(vartext1,1,0,0,0);
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,20,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,30,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,20,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,40,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,50,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,40,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
if(pos2_alt<laenge && pos2_alt>0)
|
|||
|
{
|
|||
|
instr(pos2,pos2_alt,s_inhalt2,";");
|
|||
|
if (pos2 != -1)
|
|||
|
midstr(result,s_inhalt2,pos2_alt,pos2-pos2_alt);
|
|||
|
else
|
|||
|
midstr(result,s_inhalt2,pos2_alt,laenge-pos2_alt);
|
|||
|
|
|||
|
instr(pos1,pos1_alt,s_inhalt1,";");
|
|||
|
if (pos1 != -1)
|
|||
|
midstr(label,s_inhalt1,pos1_alt,pos1-pos1_alt);
|
|||
|
else
|
|||
|
midstr(label,s_inhalt1,pos1_alt,laenge-pos1_alt);
|
|||
|
|
|||
|
//INPAapiResultText(vartext1,result+"_INFO",1,"");
|
|||
|
ftextout(label,0,60,0,0);
|
|||
|
INPAapiResultText(vartext1,result+"_EINH",1,"");
|
|||
|
ftextout(vartext1,1,70,0,0);
|
|||
|
templine = templine + ";" + label + "["+vartext1+"]";
|
|||
|
INPAapiResultAnalog(zahlen_var,result+"_WERT",1);
|
|||
|
realtostring(zahlen_var,"5.3",vartext1);
|
|||
|
|
|||
|
ftextout(vartext1,1,60,0,0);
|
|||
|
fileline = fileline + ";" + vartext1;
|
|||
|
pos2_alt=pos2+1;
|
|||
|
pos1_alt=pos1+1;
|
|||
|
}
|
|||
|
fileopen(datei_rec,"a");
|
|||
|
if (fileline1 == "")
|
|||
|
{
|
|||
|
fileline1 = templine;
|
|||
|
filewrite(fileline1);
|
|||
|
}
|
|||
|
filewrite(fileline);
|
|||
|
fileclose();
|
|||
|
|
|||
|
}
|
|||
|
|
|||
|
|
|||
|
|
|||
|
|
|||
|
}
|
|||
|
// ***********************
|
|||
|
// *** Ansteuerung GLF ***
|
|||
|
// ***********************
|
|||
|
SCREEN s_glf()
|
|||
|
{
|
|||
|
int z1;
|
|||
|
|
|||
|
userboxclose(0);
|
|||
|
viewclose();
|
|||
|
ftextout("Stellgliedansteuerung GLF",0,5,1,1);
|
|||
|
z1=3;
|
|||
|
textout(" Ansteuerbedingung: " + glf,z1,5);z1=z1+2;
|
|||
|
textout(" < F1 > K<>hlerjalousie oben zu",z1,5);z1=z1+1;
|
|||
|
textout(" < F2 > K<>hlerjalousie oben auf",z1,5);z1=z1+1;
|
|||
|
/* textout(" < F3 > K<>hlerjalousie unten zu",z1,5);z1=z1+1;
|
|||
|
textout(" < F4 > K<>hlerjalousie unten auf",z1,5);z1=z1+1; */
|
|||
|
textout(" < F5 > Ansteuerung zur<75>ck an DME",z1,5);z1=z1+2;
|
|||
|
textout(" < F10 > Zur<75>ck",z1,5);
|
|||
|
textout("< Shift > + < F10 > INPA beenden",z1,45);
|
|||
|
glf1_ansteuer(0xFE);
|
|||
|
glf2_ansteuer(0xFE);
|
|||
|
delay(250);
|
|||
|
}
|
|||
|
|
|||
|
// *******************************
|
|||
|
// *** Speichern der Messdaten ***
|
|||
|
// *******************************
|
|||
|
SCREEN s_savedata()
|
|||
|
{
|
|||
|
string pfad, info, temp;
|
|||
|
|
|||
|
if (ende == 0){
|
|||
|
pfad = "C:\EC-Apps\INPA\Messdaten.TXT";
|
|||
|
|
|||
|
fileopen(pfad, "a"); // Erstellt eine Datei in dem angegebenen Pfad; es k<>nnen Informationen an die Datei angef<65>gt werden
|
|||
|
|
|||
|
// Auslesen der Informationen, die gespeichert werden sollen
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","JA;CoSCR_st;CoSCR_stSub;SCRAd_ctSlip;SCRAd_facPlaus_Fld_0;SCRAd_facQtyAdap;SCRAd_facQtyAdapRaw_mp;SCRMod_mEstNH3Ld;SCRFFC_rPPMNOxUs;Com_rNOxCat2Ds;Com_rNOxDs;DStgy_stCondDos;Exh_rNOxOfsNoCat2Ds;Exh_rNOxOfsNSCDs;SCRChk_etaActAvrg1_mp;SCRChk_etaActAvrg2_mp;SCRChk_rNOxDiffAvrgUs_mp;SCRChk_rNOxDiffUs_mp;UDC_mRdcAgAct;UDC_mRdcAgDosQnt;DStgy_stMetStgy;Exh_rNOxNoCat2Ds;Exh_rNOxNSCDs;Exh_rO2LinNoCat2Ds;Exh_rO2LinNSCDs;Exh_stLamLeanNoCat2Ds;Exh_stLamLeanNSCDs;Exh_stNOxNSCDs;Exh_stNOxSensDiaEnaNoCat2Ds;Exh_stNOxSensDiaEnaNSCDs;SCRT_tAvrg;UDC_dmRdcAgDos;UDosVlv_rPs;UDosVlv_rDyc;RFC_stRls_mp;SCR_pUPmpP;SCR_rRawUPasTnkLvl;SCR_rUPasTnkLvl;SCR_rRawUTnkLvl;SCR_rUTnkLvl;SCR_tUTnkT","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultText(temp,"STAT_CoSCR_st_WERT",1,"");
|
|||
|
strcat(info, "Zustand des hydr. SCR Systems:CoSCR_st:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_CoSCR_stSub_WERT",1,"");
|
|||
|
strcat(info, "SubZustand des hydr. SCR Systems:CoSCR_stSub:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCRAd_ctSlip_WERT",1,"");
|
|||
|
strcat(info, "Anzahl der erfolgten Adaptionen:SCRAd_ctSlip:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCRAd_facPlaus_Fld0_WERT",1,"");
|
|||
|
strcat(info, "Plausibilit<69>ten:SCRAd_facPlaus_Fld_0:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCRAd_facQtyAdap_WERT",1,"");
|
|||
|
strcat(info, "Langzeitadaptionsfaktor:SCRAd_facQtyAdap:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCRAd_facQtyAdapRaw_mp_WERT",1,"");
|
|||
|
strcat(info, "Langzeitadaptionsfaktor (roh):SCRAd_facQtyAdapRaw_mp:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCRMod_mEstNH3Ld_WERT",1,"");
|
|||
|
strcat(info, "aktueller NH3-Speicherf<72>llstand:SCRMod_mEstNH3Ld:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCRFFC_rPPMNOxUs_WERT",1,"");
|
|||
|
strcat(info, "NOx Rohemissionen:SCRFFC_rPPMNOxUs:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_Com_rNOxCat2Ds_WERT",1,"");
|
|||
|
strcat(info, "ermittelte NOx - Konzentration 1:Com_rNOxCat2Ds:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_Com_rNOxDs_WERT",1,"");
|
|||
|
strcat(info, "ermittelte NOx - Konzentration 2:Com_rNOxDs:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_DStgy_stCondDos_WERT",1,"");
|
|||
|
strcat(info, "Freigabestatus Dosierstrategie (bitweise):DStgy_stCondDos:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_Exh_rNOxOfsNoCat2Ds_WERT",1,"");
|
|||
|
strcat(info, "Sensoroffset durch Schubkalibrierung (Downstream):Exh_rNOxOfsNoCat2Ds:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_Exh_rNOxOfsNSCDs_WERT",1,"");
|
|||
|
strcat(info, "Sensoroffset durch Schubkalibrierung (Upstream):Exh_rNOxOfsNSCDs:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCRChk_etaActAvrg1_mp_WERT",1,"");
|
|||
|
strcat(info, "durchschnittlicher tats<74>chlicher Wirkungsgrad im Temperaturbereich 1:SCRChk_etaActAvrg1_mp:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCRChk_etaActAvrg2_mp_WERT",1,"");
|
|||
|
strcat(info, "durchschnittlicher tats<74>chlicher Wirkungsgrad im Temperaturbereich 2:SCRChk_etaActAvrg2_mp:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCRChk_rNOxDiffAvrgUs_mp_WERT",1,"");
|
|||
|
strcat(info, "gemittelte normierte Nox-Abweichung zwischen Modellwert und Nox-Sensor vor SCR:SCRChk_rNOxDiffAvrgUs_mp:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCRChk_rNOxDiffUs_mp_WERT",1,"");
|
|||
|
strcat(info, "normierte Nox-Abweichung zwischen Modellwert und Nox-Sensor vor SCR:SCRChk_rNOxDiffUs_mp:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UDC_mRdcAgAct_WERT",1,"");
|
|||
|
strcat(info, "Harnstoffverbrauch seit letztem Motorstart:UDC_mRdcAgAct:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UDC_mRdcAgDosQnt_WERT",1,"");
|
|||
|
strcat(info, "Harnstoffverbrauch seit letztem Umpumpvorgang:UDC_mRdcAgDosQnt:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_DStgy_stMetStgy_WERT",1,"");
|
|||
|
strcat(info, "Freigabe der Dosierung durch die Dosierstrategie:DStgy_stMetStgy:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_Exh_rNOxNoCat2Ds_WERT",1,"");
|
|||
|
strcat(info, "Downstream - Signal von NOx-Sensor 2 (Offset-korrigiert):Exh_rNOxNoCat2Ds:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_Exh_rNOxNSCDs_WERT",1,"");
|
|||
|
strcat(info, "Upstream - Signal von NOx-Sensor 1 (Offset-korrigiert):Exh_rNOxNSCDs:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_Exh_rO2LinNoCat2Ds_WERT",1,"");
|
|||
|
strcat(info, "O2-Konzentration im Abgas nach Sekund<6E>rkatalysator:Exh_rO2LinNoCat2Ds:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_Exh_rO2LinNSCDs_WERT",1,"");
|
|||
|
strcat(info, "O2-Konzentration im Abgas nach Hauptkatalysator:Exh_rO2LinNSCDs:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_Exh_stLamLeanNoCat2Ds_WERT",1,"");
|
|||
|
strcat(info, "Lambdasignal aus NOx-Sensor nach dem NOx-Speicherkatalysator 2:Exh_stLamLeanNoCat2Ds:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_Exh_stLamLeanNSCDs_WERT",1,"");
|
|||
|
strcat(info, "Lambdasignal aus NOx-Sensor nach dem NOx-Speicherkatalysator 1:Exh_stLamLeanNSCDs:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_Exh_stNOxNSCDs_WERT",1,"");
|
|||
|
strcat(info, "NOx-Statussignal nach NOx-Speicherkatalysator:Exh_stNOxNSCDs:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_Exh_stNOxSensDiaEnaNoCat2Ds_WERT",1,"");
|
|||
|
strcat(info, "Taupunktende Nox-Sensor nach SCR-KAT:Exh_stNOxSensDiaEnaNoCat2Ds:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_Exh_stNOxSensDiaEnaNSCDs_WERT",1,"");
|
|||
|
strcat(info, "Taupunktende Nox-Sensor vor SCR-KAT:Exh_stNOxSensDiaEnaNSCDs:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCRT_tAvrg_WERT",1,"");
|
|||
|
strcat(info, "Gewichtete mittlere Temperatur des SCR Katalysators:SCRT_tAvrg:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UDC_dmRdcAgDos_WERT",1,"");
|
|||
|
strcat(info, "R<>ckmeldung der eindosierten Menge:UDC_dmRdcAgDos:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UDosVlv_rPs_WERT",1,"");
|
|||
|
strcat(info, "Tastverh<72>ltnis des Ausgangssignals der Dosierventilendstufe:UDosVlv_rPs:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UDosVlv_rDyc_WERT",1,"");
|
|||
|
strcat(info, "Sollwert f<>r das Tastverh<72>ltnis der Dosierventilendstufe:UDosVlv_rDyc:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_RFC_stRls_mp_WERT",1,"");
|
|||
|
strcat(info, "Freigabestatus Passivtank:RFC_stRls_mp:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCR_pUPmpP_WERT",1,"");
|
|||
|
strcat(info, "Pumpendruck des SCR-Systems:SCR_pUPmpP:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCR_rRawUPasTnkLvl_WERT",1,"");
|
|||
|
strcat(info, "Rohwert F<>llstand Passivtank:SCR_rRawUPasTnkLvl:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCR_rUPasTnkLvl_WERT",1,"");
|
|||
|
strcat(info, "F<>llstand - Passivtank:SCR_rUPasTnkLvl:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCR_rRawUTnkLvl_WERT",1,"");
|
|||
|
strcat(info, "Rohwert F<>llstand Aktivtank:SCR_rRawUTnkLvl:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCR_rUTnkLvl_WERT",1,"");
|
|||
|
strcat(info, "F<>llstand Aktivtank:SCR_rUTnkLvl:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCR_tUTnkT_WERT",1,"");
|
|||
|
strcat(info, "Temperatur der Harnstoff-Wasser-L<>sung:SCR_tUTnkT:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiJob(sgbd,"STATUS_MESSWERTBLOCK_LESEN","ja;SCR_uRawUCatUsT;SCR_uRawUPmpP;SCR_uRawUTnkT;UDC_mRdcAgRmn;UDC_stDetPasTnkReFill;UDC_stDetReFill;UHC_iPLSensDia_mp;UHC_iTnkSensDia_mp;UHC_stCReq;UHC_stCtl;UHC_stDfrstChk;UHtrPL_st;UHtrPL_stPs;UHtrTnk_st;UHtrTnk_stPs;UPmpMot_r;UPmpMot_rPs;UPmpReFl_rPs;UPmpReFl_st;URevVlv_st;URevVlv_stPs;SCR_tUCatUsT","");
|
|||
|
INPAapiCheckJobStatus("OKAY");
|
|||
|
INPAapiResultText(temp,"STAT_SCR_uRawUCatUsT_WERT",1,"");
|
|||
|
strcat(info, "Sensorrohspannung des Temperatursensors vor Harnstoffkatalysator:SCR_uRawUCatUsT:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCR_uRawUPmpP_WERT",1,"");
|
|||
|
strcat(info, "Sensorrohspannung des Drucksensors der HWL-Pumpe:SCR_uRawUPmpP:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCR_uRawUTnkT_WERT",1,"");
|
|||
|
strcat(info, "Sensorrohspannung des Temperatursensors der Harnstoff-Wasser-L<>sung:SCR_uRawUTnkT:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UDC_mRdcAgRmn_WERT",1,"");
|
|||
|
strcat(info, "Resttankmenge:UDC_mRdcAgRmn:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UDC_stDetPasTnkReFill_WERT",1,"");
|
|||
|
strcat(info, "Nachtankerkennung Passivtank:UDC_stDetPasTnkReFill:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UDC_stDetReFill_WERT",1,"");
|
|||
|
strcat(info, "Nachtankerkennung Aktivtank:UDC_stDetReFill:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UHC_iPLSensDia_mp_WERT",1,"");
|
|||
|
strcat(info, "Aktueller Stromspiegel der Druckleitung bzw. F<>rdermodulheizung:UHC_iPLSensDia_mp:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UHC_iTnkSensDia_mp_WERT",1,"");
|
|||
|
strcat(info, "aktueller Stromspiegel der Tankheizung:UHC_iTnkSensDia_mp:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UHC_stCReq_WERT",1,"");
|
|||
|
strcat(info, "Anforderung zum Heizen des Tanks und / oder der Druckleitung:UHC_stCReq:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UHC_stCtl_WERT",1,"");
|
|||
|
strcat(info, "Status der Tanktemperatur und Auftauen der Druckleitung:UHC_stCtl:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UHC_stDfrstChk_WERT",1,"");
|
|||
|
strcat(info, "Status der Auftaupr<70>fung:UHC_stDfrstChk:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UHtrPL_st_WERT",1,"");
|
|||
|
strcat(info, "Status - Sollwert f<>r die Druckleitungsheizung:UHtrPL_st:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UHtrPL_stPs_WERT",1,"");
|
|||
|
strcat(info, "Status der Endstufe f<>r die Druckleitungsheizung:UHtrPL_stPs:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UHtrTnk_st_WERT",1,"");
|
|||
|
strcat(info, "Status der Endstufe f<>r die Tankheizung:UHtrTnk_st:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UHtrTnk_stPs_WERT",1,"");
|
|||
|
strcat(info, "Status - Sollwert f<>r die Tankheizung:UHtrTnk_stPs:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UPmpMot_r_WERT",1,"");
|
|||
|
strcat(info, "Tastverh<72>ltnis zur Ansteuerung des Pumpenmotors (Sollwert):UPmpMot_r:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UPmpMot_rPs_WERT",1,"");
|
|||
|
strcat(info, "Tastverh<72>ltnis zur Ansteuerung des Pumpenmotors (Endstufe):UPmpMot_rPs:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UPmpReFl_rPs_WERT",1,"");
|
|||
|
strcat(info, "Tastverhaeltnis an der Endstufe:UPmpReFl_rPs:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_UPmpReFl_st_WERT",1,"");
|
|||
|
strcat(info, "Status der Auftaupr<70>fung:UPmpReFl_st:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_URevVlv_st_WERT",1,"");
|
|||
|
strcat(info, "Status - digitaler Ausgangs zum 4/2 Wegeventil (Sollwert):URevVlv_st:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_URevVlv_stPs_WERT",1,"");
|
|||
|
strcat(info, "Status - digitaler Ausgangs zum 4/2 Wegeventil (Endstufe):URevVlv_stPs:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
INPAapiResultText(temp,"STAT_SCR_tUCatUsT_WERT",1,"");
|
|||
|
strcat(info, "Temperatur vor SCR-Katalysator:SCR_tUCatUsT:", temp);
|
|||
|
filewrite(info);
|
|||
|
|
|||
|
fileclose();
|
|||
|
ende = 1; // ende wird auf 1 gesetzt, wenn die Messdatenspeicherung abgeschlossen ist (bei globalen Variablen mit 0 initialisiert)
|
|||
|
}
|
|||
|
|
|||
|
LINE ("Messdatenspeicherung",""){
|
|||
|
text(5,0,"Messdatenspeicherung abgeschlossen.");
|
|||
|
text(6,0,"Die ausgelesenen Daten werden in der Datei Messdaten.TXT gespeichert");
|
|||
|
text(7,0,"Die Datei finden sie unter C:\EC-Apps\INPA.");
|
|||
|
}
|
|||
|
}
|
|||
|
// -- EOF --
|