bmw-advanced-tools/app/EC-APPS/INPA/SGDAT/dkg_90.ips

8237 lines
309 KiB
Plaintext
Raw Normal View History

2021-09-18 17:45:57 +02:00
//**********************************************************************
//*
//* Nacharbeitssource f<>r INPA
//*
//* Sourcedatei DKG_90.SRC
//*
//**********************************************************************
//* History :
//* 06.04.2000 rd V0.01 Ersterstellung Grundumfang
//* V0.01 Identifikation Lesen ,
//* V0.01 Anwender Infofeld Lesen ,
//* V0.01 Fehlerspeicher Lesen, L<>schen,
//* V0.01 Infospeicher (Shadowspeicher) Lesen, L<>schen,
//* V0.01 Speicher Lesen
//* 23.06.2000 rd V0.02 <20>berarbeitung f<>r E65 und E85
//* 19.12.2001 rd V0.03 <20>berarbeitung f<>r E60, E81, E90 und RR01
//* 14.08.2002 rd V0.04 E81 wird E87
//* 16.02.2004 rd V0.05 Umstellung auf 32-Bit INPA
//* 27.11.2007 PB V0.90 Pascal Bilang, Status, Steuern komplett
//* 27.11.2007 GA V0.90 Statistikdaten l<>schen: aktiv auf nein gehen, um zu l<>schen
//* 27.11.2007 GA V0.90 F5, F1: Speichern: Fahrgestellnummer wird aus CAS als Dateiname <20>bernommen.
//* 28.11.2007 PB V0.904 Rohwerte --> Paddel Spannung; Test und Einlern - Abfrage hinzugef<65>gt
//* 07.11.2007 PB V0.905 Anzeige Abspritzsonsor Widerstand Anzeige korrigiert
//* 07.01.2008 PB V0.906 Schaltindex lt. LH Diagnoseschnittstelle 0.27 entfernt
//* 10.01.2008 PB V0.920 Version-Anpassung zur SGBD Version 2.000
//**********************************************************************
#include "inpa.h"
#pragma winedit
#include "..\sgdat\bmw_std.h"
// Titel, Version, Verantwortung, Steuerger<65>t
string titel ="Doppelkupplungsgetriebe (DKG) f<>r E9x, E89"; // Titel Nacharbeitsprogramm
string version="0.920"; // Version Nacharbeitsprogramm
string origin ="BMW EA-504 Senft, BMW EA-504 Bilang"; // Verantwortung Nacharbeitsprogramm
string sgbd ="DKG_90"; // Steuerger<65>t
string gruppe ="D_EGS"; // 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;
string te_id;
string te_job;
real zahlen_var;
real real_zahl;
int ganz_zahl;
bool logik_var;
bool bool_var;
bool digital,digital1;
string job_state; // JOB_STATUS Variable
int input_state; // Eingabestatus
int input_ok=0; // Eingabe mit OK beendet
int int_zahl;
int int_id;
// 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"
// ****************************************************
// *** Funktionen ***
// ****************************************************
//****************************************************************
// Speicher Funktion wird NUR f<>r DKG EA-504 Fehleranalyse verwendet
//****************************************************************
speichern ()
{
bool aufruf_io;
string name,fahrzeug,date,time,file,text_var1,f_uw_text,f_uw_einh,f_uw_wert,einh_var,text_zahl,blank,blank1,blank2,text_var2,text1,text2;
int i,j,sets,fehlercode,anzahl_uw,uw_bedingungen,zahl,platz,slaenge;
input2text(name,fahrzeug,"Filetitel","Geben Sie die Daten"+
" zur Identifikation des Files ein!","Ihr Name","IEX/PPP Nr.");
//Keine Werkerausgabe, wenn z.B. keine SGBD vorhanden ist.
INPAapiJob("D_CAS","STATUS_FAHRGESTELLNUMMER","","FGNUMMER");
INP1apiResultText(aufruf_io,text_var,"FGNUMMER",1,"");
if(aufruf_io == FALSE)//Fahrgestellnummer kann nicht aus CAS gelesen werden.
{
file="C:\\DKG.txt";
}
else
{
file="C:\\"+text_var+".txt";//Dateiname ist Fahrgestellnummer
}
inputtext(file,"Filename","Gegen Sie das Verzeichnis mit Dateinamen ein! z.B. c:\\Temp\\DKG436_Daten.txt");
getinputstate(input_state);
if(input_state==input_ok)
{
fileopen(file,"w");
filewrite("==============================================================================================");
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> DKG436 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
getdate(date);
gettime(time);
filewrite("Datum/Zeit : "+date+" "+time);
filewrite("Dateiname : "+file);
filewrite("Bearbeiter : "+name);
filewrite("Kommentar : "+fahrzeug);
INPAapiJob(sgbd,"INFO","","");
INPAapiResultText(text_var,"REVISION",1,"");
filewrite("Geladene SGBD-Version : "+text_var);
//filewrite("Ben<65>tigte SGBD-Version : "+sgbd_version);
filewrite("INPA-Version : "+version);
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>> DKG IDENTIFIKATION <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
INPAapiJob(sgbd,"IDENT","","");
INPAapiResultText(text_var,"ID_BMW_NR",1,"");
filewrite("BMW Teilenummer : "+text_var);
INPAapiResultText(text_var,"ID_HW_NR",1,"");
filewrite("BMW Hardwarenummer : "+text_var);
INPAapiResultInt(int_zahl,"ID_COD_INDEX",1);
inttostring(int_zahl,text_var);
filewrite("Codier-Index : "+text_var);
INPAapiResultInt(int_zahl,"ID_DIAG_INDEX",1);
inttostring(int_zahl,text_var);
filewrite("Diagnose-Index : "+text_var);
INPAapiResultInt(int_zahl,"ID_VAR_INDEX",1);
inttostring(int_zahl,text_var);
filewrite("Varianten-Index : "+text_var);
INPAapiResultText(text_var,"ID_DATUM",1,"");
filewrite("Herstelldatum : "+text_var);
INPAapiResultText(text_var,"ID_LIEF_TEXT",1,"");
filewrite("Lieferant : "+text_var);
INPAapiResultText(text_var,"ID_SW_NR_MCV",1,"");
filewrite("Nachrichtenkatalognummer MCV : "+text_var);
INPAapiResultText(text_var,"ID_SW_NR_FSV",1,"");
filewrite("Funktionssoftwarenummer FSV : "+text_var);
INPAapiResultText(text_var,"ID_SW_NR_OSV",1,"");
filewrite("Betriebssystemnummer OSV : "+text_var);
INPAapiJob(sgbd,"AIF_LESEN","","");
INPAapiResultText(text_var,"AIF_DATUM",1,"");
filewrite("AIF Datum : "+text_var);
INPAapiJob(sgbd,"SERIENNUMMER_LESEN","","");
INPAapiResultText(text_var,"SERIENNUMMER",1,"");
filewrite("SG Serienummer : " +text_var);
INPAapiJob(sgbd,"STATUS_COMPILER_BOOTLOADER","","");
INPAapiResultText(text_var,"STAT_DATUM",1,"");
filewrite("Temic Bootloader Datum : " +text_var);
INPAapiJob(sgbd,"STATUS_COMPILER_APPLIKATION","","");
INPAapiResultText(text_var,"STAT_DATUM",1,"");
filewrite("Temic Compiler-Programm Datum : "+text_var);
INPAapiJob(sgbd,"STATUS_COMPILER_DAF","","");
INPAapiResultText(text_var,"STAT_DATUM",1,"");
filewrite("Temic Compiler-Daten Datum : "+text_var);
INPAapiJob(sgbd,"ZIF_LESEN","","");
INPAapiResultText(text_var,"ZIF_PROGRAMM_REFERENZ",1,"");
filewrite("Programm Referenz(ZIF) : "+text_var);
INPAapiResultText(text_var,"ZIF_SG_KENNUNG",1,"");
filewrite("ZIF Hardwarelieferant(ZZZ) : "+text_var);
INPAapiResultText(text_var,"ZIF_PROJEKT",1,"");
filewrite("HW-Relevanz des PST(PPPx) : "+text_var);
INPAapiResultText(text_var,"ZIF_PROGRAMM_STAND",1,"");
filewrite("Programmstand : "+text_var);
INPAapiJob(sgbd,"HARDWARE_REFERENZ_LESEN","","");
INPAapiResultText(text_var,"HARDWARE_REFERENZ",1,"");
filewrite("Hardware Referenz : " +text_var);
INPAapiResultText(text_var,"HW_REF_SG_KENNUNG",1,"");
filewrite("HW Referenz SG Kennung : " +text_var);
INPAapiResultText(text_var,"HW_REF_PROJEKT",1,"");
filewrite("HW Referenz Projekt : " +text_var);
INPAapiJob(sgbd,"DATEN_REFERENZ_LESEN","","");
INPAapiResultText(text_var,"DATEN_REFERENZ",1,"");
filewrite("Daten Referen : " +text_var);
INPAapiResultText(text_var,"DATEN_REF_SG_KENNUNG",1,"");
filewrite("DAT Referenz SG Kennung : " +text_var);
INPAapiResultText(text_var,"DATEN_REF_PROJEKT",1,"");
filewrite("DAT Referenz Projekt : "+text_var);
INPAapiResultText(text_var,"DATEN_REF_PROGRAMM_STAND",1,"");
filewrite("DAT Referenz Programmstand : " +text_var);
INPAapiResultText(text_var,"DATEN_REF_DATENSATZ",1,"");
filewrite("DAT Referenz Datensatz : " +text_var);
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> ALLGEMEINE DATEN <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
INPAapiJob(sgbd,"STATUS_ISTWERTE_LESEN","","");
INPAapiResultAnalog(real_zahl,"STAT_KILOMETERSTAND_WERT",1);
realtostring(real_zahl,"6.0",text_var);
filewrite("Kilometerstand: " +text_var+ " km");
filewrite("");
filewrite("");
i=1;
j=3;
filewrite("================================================================================================");
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Fehler <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
if(sets==1)
{
filewrite(" >>>>>>>>>>> keine Fehler gefunden <<<<<<<<<<< ");
}
else
{
userboxopen(0,10,10,3,50,"SPEICHERN","");
userboxftextout(0,"Fehler werden gespeichert! Bitte warten....",1,0,0,0);
INPAapiJob(sgbd,"FS_LESEN","","");
INPAapiResultInt(int_zahl,"SAETZE",0);
int_zahl=int_zahl-1;
sets=int_zahl;
inttostring(int_zahl,text_var);
filewrite ("Es sind " + text_var + " Fehler im Fehlerspeicher gespeichert:");
filewrite ("");
INPAapiResultInt(int_zahl,"F_ORT_NR",sets); //abfagen der Scheinfehler
if( int_zahl == 0x0001 || int_zahl == 0xFFFF )
sets = sets -1;
INPAapiResultInt(int_zahl,"F_ORT_NR",sets);
if( int_zahl == 0x0001 || int_zahl == 0xFFFF )
sets = sets -1;
while(i <= sets)
{
inttostring(i,text_var);
filewrite("Fehler Nr." +text_var);
INPAapiJob(sgbd,"FS_LESEN","","");
INPAapiResultInt(fehlercode,"F_ORT_NR",i);
inttostring(fehlercode,text_var);
INPAapiJob(sgbd,"fs_lesen_detail",text_var,"");
INPAapiResultText(text_var,"F_ORT_TEXT",1,"");
filewrite ("Fehlerort Text : " + text_var);
INPAapiResultInt(int_zahl,"F_ORT_NR",1);
inttohexstring(int_zahl,4,text_var1);
inttostring(int_zahl,text_var);
filewrite("Fehlercode : 0x" + text_var1 );
INPAapiResultText(text_var,"F_SYMPTOM_TEXT",1,"");
filewrite ("Fehlerart : " + text_var);
INPAapiResultInt(anzahl_uw,"F_HFK",1);
inttostring(anzahl_uw,text_var);
filewrite ("Fehlerh<72>ufigkeit : " + text_var);
INPAapiResultInt(int_zahl,"F_LZ",1);
inttostring(int_zahl,text_var);
filewrite ("Fehlerlogistikz<6B>hler : " + text_var);
INPAapiResultText(text_var,"F_WARNUNG_TEXT",1,"");
filewrite ("CARB Fehler : " + text_var);
INPAapiResultText(text_var,"F_VORHANDEN_TEXT",1,"");
filewrite ("Fehler Status : " + text_var);
INPAapiResultText(text_var,"F_READY_TEXT",1,"");
filewrite ("Testbedingung : " + text_var);
if(anzahl_uw >=1)
{
filewrite("");
filewrite ("Umweltbedingungen Satz 1 :");
INPAapiResultInt(uw_bedingungen,"F_UW_ANZ",1);
INPAapiResultAnalog(real_zahl,"F_UW_KM",1);
realtostring(real_zahl,"8.0",text_var);
filewrite("");
filewrite ("Kilometerstand : " + text_var + " km");
filewrite("");
zahl=1;
while (zahl <= uw_bedingungen)
{
inttostring(zahl,text_var);
strcat(f_uw_text,"F_UW",text_var);
strcat(f_uw_text,f_uw_text,"_TEXT");
inttostring(zahl,text_var);
strcat(f_uw_wert,"F_UW",text_var);
strcat(f_uw_wert,f_uw_wert,"_WERT");
inttostring(zahl,text_var);
strcat(f_uw_einh,"F_UW",text_var);
strcat(f_uw_einh,f_uw_einh,"_EINH");
INPAapiResultText(einh_var,f_uw_einh,1,"");
if(einh_var == "0-n")
{
INPAapiResultText(text_zahl,f_uw_wert,1,"");
}
else
{
INPAapiResultAnalog(real_zahl,f_uw_wert,1);
}
INPAapiResultText(text_var,f_uw_text,1,"");
strlen(slaenge,text_var);
platz=1;
blank1=" ";
while(platz<=75-slaenge)
{
blank1=blank1+" ";
platz=platz+1;
}
if(einh_var != "0-n")
{
realtostring(real_zahl,"6.2",text_zahl);
}
strlen(slaenge,text_zahl);
platz=1;
blank2=" ";
while(platz<=10-slaenge)
{
blank2=blank2+" ";
platz=platz+1;
}
filewrite (text_var+blank1+text_zahl+blank2+einh_var);
zahl=zahl+1;
}
}
if(anzahl_uw>=2)
{
filewrite("");
filewrite ("Umweltbedingungen Satz 2 :");
INPAapiResultInt(uw_bedingungen,"F_UW_ANZ",2);
INPAapiResultAnalog(real_zahl,"F_UW_KM",2);
realtostring(real_zahl,"8.0",text_var);
filewrite("");
filewrite ("Kilometerstand : " + text_var + " km");
filewrite("");
zahl=1;
while (zahl <= uw_bedingungen)
{
inttostring(zahl,text_var);
strcat(f_uw_text,"F_UW",text_var);
strcat(f_uw_text,f_uw_text,"_TEXT");
inttostring(zahl,text_var);
strcat(f_uw_wert,"F_UW",text_var);
strcat(f_uw_wert,f_uw_wert,"_WERT");
inttostring(zahl,text_var);
strcat(f_uw_einh,"F_UW",text_var);
strcat(f_uw_einh,f_uw_einh,"_EINH");
INPAapiResultText(text_var,f_uw_text,2,"");
INPAapiResultAnalog(real_zahl,f_uw_wert,2);
INPAapiResultText(einh_var,f_uw_einh,2,"");
strlen(slaenge,text_var);
platz=1;
blank1=" ";
while(platz<=75-slaenge)
{
blank1=blank1+" ";
platz=platz+1;
}
realtostring(real_zahl,"6.2",text_zahl);
strlen(slaenge,text_zahl);
platz=1;
blank2=" ";
while(platz<=10-slaenge)
{
blank2=blank2+" ";
platz=platz+1;
}
filewrite (text_var+blank1+text_zahl+blank2+einh_var);
zahl=zahl+1;
} // end while
} // end if
if(anzahl_uw >=3)
{
filewrite("");
filewrite ("Umweltbedingungen Satz 3 :");
INPAapiResultInt(uw_bedingungen,"F_UW_ANZ",3);
INPAapiResultAnalog(real_zahl,"F_UW_KM",3);
realtostring(real_zahl,"8.0",text_var);
filewrite("");
filewrite ("Kilometerstand : " + text_var + " km");
filewrite("");
zahl=1;
while (zahl <= uw_bedingungen)
{
inttostring(zahl,text_var);
strcat(f_uw_text,"F_UW",text_var);
strcat(f_uw_text,f_uw_text,"_TEXT");
inttostring(zahl,text_var);
strcat(f_uw_wert,"F_UW",text_var);
strcat(f_uw_wert,f_uw_wert,"_WERT");
inttostring(zahl,text_var);
strcat(f_uw_einh,"F_UW",text_var);
strcat(f_uw_einh,f_uw_einh,"_EINH");
INPAapiResultText(text_var,f_uw_text,3,"");
INPAapiResultAnalog(real_zahl,f_uw_wert,3);
INPAapiResultText(einh_var,f_uw_einh,3,"");
strlen(slaenge,text_var);
platz=1;
blank1=" ";
while(platz<=75-slaenge)
{
blank1=blank1+" ";
platz=platz+1;
}
realtostring(real_zahl,"6.2",text_zahl);
strlen(slaenge,text_zahl);
platz=1;
blank2=" ";
while(platz<=10-slaenge)
{
blank2=blank2+" ";
platz=platz+1;
}
filewrite (text_var+blank1+text_zahl+blank2+einh_var);
zahl=zahl+1;
}
}
filewrite("------------------------------------------------------------------------------------------------");
i=i+1;
}
}
}
userboxclose(0);
i=1;
j=3;
filewrite("================================================================================================");
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Infospeicher <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
if(sets==1)
{
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> keine Fehler gefunden <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
}
else
{
userboxopen(0,10,10,3,50,"SPEICHERN","");
userboxftextout(0,"Fehler werden gespeichert! Bitte warten....",1,0,0,0);
INPAapiJob(sgbd,"IS_LESEN","","");
INPAapiResultInt(int_zahl,"SAETZE",0);
int_zahl=int_zahl-1;
sets=int_zahl;
inttostring(int_zahl,text_var);
filewrite ("Es sind " + text_var + " Fehler im Infospeicher gespeichert:");
filewrite ("");
while(i <= sets)
{
inttostring(i,text_var);
filewrite("Fehler Nr." +text_var);
INPAapiJob(sgbd,"IS_LESEN","","");
INPAapiResultInt(fehlercode,"F_ORT_NR",i);
inttostring(fehlercode,text_var);
INPAapiJob(sgbd,"is_lesen_detail",text_var,"");
INPAapiResultText(text_var,"F_ORT_TEXT",1,"");
filewrite ("Fehlerort Text : " + text_var);
INPAapiResultInt(int_zahl,"F_ORT_NR",1);
inttohexstring(int_zahl,4,text_var1);
inttostring(int_zahl,text_var);
filewrite("Fehlercode : 0x" + text_var1 );
INPAapiResultText(text_var,"F_SYMPTOM_TEXT",1,"");
filewrite ("Fehlerart : " + text_var);
INPAapiResultInt(anzahl_uw,"F_HFK",1);
inttostring(anzahl_uw,text_var);
filewrite ("Fehlerh<72>ufigkeit : " + text_var);
INPAapiResultInt(int_zahl,"F_LZ",1);
inttostring(int_zahl,text_var);
filewrite ("Fehlerlogistikz<6B>hler : " + text_var);
INPAapiResultText(text_var,"F_WARNUNG_TEXT",1,"");
filewrite ("CARB Fehler : " + text_var);
INPAapiResultText(text_var,"F_VORHANDEN_TEXT",1,"");
filewrite ("Fehler Status : " + text_var);
INPAapiResultText(text_var,"F_READY_TEXT",1,"");
filewrite ("Testbedingung : " + text_var);
if(anzahl_uw >=1)
{
filewrite("");
filewrite ("Umweltbedingungen Satz 1 :");
INPAapiResultInt(uw_bedingungen,"F_UW_ANZ",1);
INPAapiResultAnalog(real_zahl,"F_UW_KM",1);
realtostring(real_zahl,"8.0",text_var);
filewrite("");
filewrite ("Kilometerstand : " + text_var + " km");
filewrite("");
zahl=1;
while (zahl <= uw_bedingungen)
{
inttostring(zahl,text_var);
strcat(f_uw_text,"F_UW",text_var);
strcat(f_uw_text,f_uw_text,"_TEXT");
inttostring(zahl,text_var);
strcat(f_uw_wert,"F_UW",text_var);
strcat(f_uw_wert,f_uw_wert,"_WERT");
inttostring(zahl,text_var);
strcat(f_uw_einh,"F_UW",text_var);
strcat(f_uw_einh,f_uw_einh,"_EINH");
INPAapiResultText(text_var,f_uw_text,1,"");
INPAapiResultAnalog(real_zahl,f_uw_wert,1);
INPAapiResultText(einh_var,f_uw_einh,1,"");
strlen(slaenge,text_var);
platz=1;
blank1=" ";
while(platz<=75-slaenge)
{
blank1=blank1+" ";
platz=platz+1;
}
realtostring(real_zahl,"6.2",text_zahl);
strlen(slaenge,text_zahl);
platz=1;
blank2=" ";
while(platz<=10-slaenge)
{
blank2=blank2+" ";
platz=platz+1;
}
filewrite (text_var+blank1+text_zahl+blank2+einh_var);
zahl=zahl+1;
} // end while
} // end if
if(anzahl_uw>=2)
{
filewrite("");
filewrite ("Umweltbedingungen Satz 2 :");
INPAapiResultInt(uw_bedingungen,"F_UW_ANZ",2);
INPAapiResultAnalog(real_zahl,"F_UW_KM",2);
realtostring(real_zahl,"8.0",text_var);
filewrite("");
filewrite ("Kilometerstand : " + text_var + " km");
filewrite("");
zahl=1;
while (zahl <= uw_bedingungen)
{
inttostring(zahl,text_var);
strcat(f_uw_text,"F_UW",text_var);
strcat(f_uw_text,f_uw_text,"_TEXT");
inttostring(zahl,text_var);
strcat(f_uw_wert,"F_UW",text_var);
strcat(f_uw_wert,f_uw_wert,"_WERT");
inttostring(zahl,text_var);
strcat(f_uw_einh,"F_UW",text_var);
strcat(f_uw_einh,f_uw_einh,"_EINH");
INPAapiResultText(text_var,f_uw_text,2,"");
INPAapiResultAnalog(real_zahl,f_uw_wert,2);
INPAapiResultText(einh_var,f_uw_einh,2,"");
strlen(slaenge,text_var);
platz=1;
blank1=" ";
while(platz<=75-slaenge)
{
blank1=blank1+" ";
platz=platz+1;
}
realtostring(real_zahl,"6.2",text_zahl);
strlen(slaenge,text_zahl);
platz=1;
blank2=" ";
while(platz<=10-slaenge)
{
blank2=blank2+" ";
platz=platz+1;
}
filewrite (text_var+blank1+text_zahl+blank2+einh_var);
zahl=zahl+1;
} // end while
} // end if
if(anzahl_uw >=3)
{
filewrite("");
filewrite ("Umweltbedingungen Satz 3 :");
INPAapiResultInt(uw_bedingungen,"F_UW_ANZ",3);
INPAapiResultAnalog(real_zahl,"F_UW_KM",3);
realtostring(real_zahl,"8.0",text_var);
filewrite("");
filewrite ("Kilometerstand : " + text_var + " km");
filewrite("");
zahl=1;
while (zahl <= uw_bedingungen)
{
inttostring(zahl,text_var);
strcat(f_uw_text,"F_UW",text_var);
strcat(f_uw_text,f_uw_text,"_TEXT");
inttostring(zahl,text_var);
strcat(f_uw_wert,"F_UW",text_var);
strcat(f_uw_wert,f_uw_wert,"_WERT");
inttostring(zahl,text_var);
strcat(f_uw_einh,"F_UW",text_var);
strcat(f_uw_einh,f_uw_einh,"_EINH");
INPAapiResultText(text_var,f_uw_text,3,"");
INPAapiResultAnalog(real_zahl,f_uw_wert,3);
INPAapiResultText(einh_var,f_uw_einh,3,"");
strlen(slaenge,text_var);
platz=1;
blank1=" ";
while(platz<=75-slaenge)
{
blank1=blank1+" ";
platz=platz+1;
}
realtostring(real_zahl,"6.2",text_zahl);
strlen(slaenge,text_zahl);
platz=1;
blank2=" ";
while(platz<=10-slaenge)
{
blank2=blank2+" ";
platz=platz+1;
}
filewrite (text_var+blank1+text_zahl+blank2+einh_var);
zahl=zahl+1;
} // end while
} // end if
filewrite("------------------------------------------------------------------------------------------------");
i=i+1;
}
}
userboxclose(0);
i=1;
j=3;
filewrite("================================================================================================");
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Historien Fehler <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
if(sets==1)
{
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> keine Fehler gefunden <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
}
else
{
userboxopen(0,10,10,3,50,"SPEICHERN","");
userboxftextout(0,"Fehler werden gespeichert! Bitte warten....",1,0,0,0);
INPAapiJob(sgbd,"HS_LESEN","","");
INPAapiResultInt(int_zahl,"SAETZE",0);
int_zahl=int_zahl-1;
sets=int_zahl;
inttostring(int_zahl,text_var);
filewrite ("Es sind " + text_var + " Fehler im Historienspeicher gespeichert:");
filewrite ("");
while(i <= sets)
{
inttostring(i,text_var);
filewrite("Fehler Nr." +text_var);
INPAapiJob(sgbd,"HS_LESEN","","");
INPAapiResultInt(fehlercode,"F_ORT_NR",i);
inttostring(fehlercode,text_var);
INPAapiJob(sgbd,"hs_lesen_detail",text_var,"");
INPAapiResultText(text_var,"F_ORT_TEXT",1,"");
filewrite ("Fehlerort Text : " + text_var);
INPAapiResultInt(int_zahl,"F_ORT_NR",1);
inttohexstring(int_zahl,4,text_var1);
inttostring(int_zahl,text_var);
filewrite("Fehlercode : 0x" + text_var1 );
INPAapiResultText(text_var,"F_SYMPTOM_TEXT",1,"");
filewrite ("Fehlerart : " + text_var);
INPAapiResultInt(anzahl_uw,"F_HFK",1);
inttostring(anzahl_uw,text_var);
filewrite ("Fehlerh<72>ufigkeit : " + text_var);
INPAapiResultInt(int_zahl,"F_LZ",1);
inttostring(int_zahl,text_var);
filewrite ("Fehlerlogistikz<6B>hler : " + text_var);
INPAapiResultText(text_var,"F_WARNUNG_TEXT",1,"");
filewrite ("CARB Fehler : " + text_var);
INPAapiResultText(text_var,"F_VORHANDEN_TEXT",1,"");
filewrite ("Fehler Status : " + text_var);
INPAapiResultText(text_var,"F_READY_TEXT",1,"");
filewrite ("Testbedingung : " + text_var);
if(anzahl_uw >=1)
{
filewrite("");
filewrite ("Umweltbedingungen Satz 1 :");
INPAapiResultInt(uw_bedingungen,"F_UW_ANZ",1);
INPAapiResultAnalog(real_zahl,"F_UW_KM",1);
realtostring(real_zahl,"8.0",text_var);
filewrite("");
filewrite ("Kilometerstand : " + text_var + " km");
filewrite("");
zahl=1;
while (zahl <= uw_bedingungen)
{
inttostring(zahl,text_var);
strcat(f_uw_text,"F_UW",text_var);
strcat(f_uw_text,f_uw_text,"_TEXT");
inttostring(zahl,text_var);
strcat(f_uw_wert,"F_UW",text_var);
strcat(f_uw_wert,f_uw_wert,"_WERT");
inttostring(zahl,text_var);
strcat(f_uw_einh,"F_UW",text_var);
strcat(f_uw_einh,f_uw_einh,"_EINH");
INPAapiResultText(text_var,f_uw_text,1,"");
INPAapiResultAnalog(real_zahl,f_uw_wert,1);
INPAapiResultText(einh_var,f_uw_einh,1,"");
strlen(slaenge,text_var);
platz=1;
blank1=" ";
while(platz<=75-slaenge)
{
blank1=blank1+" ";
platz=platz+1;
}
realtostring(real_zahl,"6.2",text_zahl);
strlen(slaenge,text_zahl);
platz=1;
blank2=" ";
while(platz<=10-slaenge)
{
blank2=blank2+" ";
platz=platz+1;
}
filewrite (text_var+blank1+text_zahl+blank2+einh_var);
zahl=zahl+1;
} // end while
} // end if
if(anzahl_uw>=2)
{
filewrite("");
filewrite ("Umweltbedingungen Satz 2 :");
INPAapiResultInt(uw_bedingungen,"F_UW_ANZ",2);
INPAapiResultAnalog(real_zahl,"F_UW_KM",2);
realtostring(real_zahl,"8.0",text_var);
filewrite("");
filewrite ("Kilometerstand : " + text_var + " km");
filewrite("");
zahl=1;
while (zahl <= uw_bedingungen)
{
inttostring(zahl,text_var);
strcat(f_uw_text,"F_UW",text_var);
strcat(f_uw_text,f_uw_text,"_TEXT");
inttostring(zahl,text_var);
strcat(f_uw_wert,"F_UW",text_var);
strcat(f_uw_wert,f_uw_wert,"_WERT");
inttostring(zahl,text_var);
strcat(f_uw_einh,"F_UW",text_var);
strcat(f_uw_einh,f_uw_einh,"_EINH");
INPAapiResultText(text_var,f_uw_text,2,"");
INPAapiResultAnalog(real_zahl,f_uw_wert,2);
INPAapiResultText(einh_var,f_uw_einh,2,"");
strlen(slaenge,text_var);
platz=1;
blank1=" ";
while(platz<=75-slaenge)
{
blank1=blank1+" ";
platz=platz+1;
}
realtostring(real_zahl,"6.2",text_zahl);
strlen(slaenge,text_zahl);
platz=1;
blank2=" ";
while(platz<=10-slaenge)
{
blank2=blank2+" ";
platz=platz+1;
}
filewrite (text_var+blank1+text_zahl+blank2+einh_var);
zahl=zahl+1;
} // end while
} // end if
if(anzahl_uw >=3)
{
filewrite("");
filewrite ("Umweltbedingungen Satz 3 :");
INPAapiResultInt(uw_bedingungen,"F_UW_ANZ",3);
INPAapiResultAnalog(real_zahl,"F_UW_KM",3);
realtostring(real_zahl,"8.0",text_var);
filewrite("");
filewrite ("Kilometerstand : " + text_var + " km");
filewrite("");
zahl=1;
while (zahl <= uw_bedingungen)
{
inttostring(zahl,text_var);
strcat(f_uw_text,"F_UW",text_var);
strcat(f_uw_text,f_uw_text,"_TEXT");
inttostring(zahl,text_var);
strcat(f_uw_wert,"F_UW",text_var);
strcat(f_uw_wert,f_uw_wert,"_WERT");
inttostring(zahl,text_var);
strcat(f_uw_einh,"F_UW",text_var);
strcat(f_uw_einh,f_uw_einh,"_EINH");
INPAapiResultText(text_var,f_uw_text,3,"");
INPAapiResultAnalog(real_zahl,f_uw_wert,3);
INPAapiResultText(einh_var,f_uw_einh,3,"");
strlen(slaenge,text_var);
platz=1;
blank1=" ";
while(platz<=75-slaenge)
{
blank1=blank1+" ";
platz=platz+1;
}
realtostring(real_zahl,"6.2",text_zahl);
strlen(slaenge,text_zahl);
platz=1;
blank2=" ";
while(platz<=10-slaenge)
{
blank2=blank2+" ";
platz=platz+1;
}
filewrite (text_var+blank1+text_zahl+blank2+einh_var);
zahl=zahl+1;
} // end while
} // end if
filewrite("------------------------------------------------------------------------------------------------");
i=i+1;
}
}
userboxclose(0);
filewrite("================================================================================================");
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Statistikdaten <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
INPAapiJob(sgbd,"STATISTIKDATENSATZ_1_LESEN","","");
INPAapiResultText(text_var,"STAT_FAHRZEUGTYP_TEXT",1,"");
filewrite("Fahrzeugtyp : "+ text_var);
INPAapiResultAnalog(real_zahl,"ANZ_LOESCHUNGEN_WERT",1);
realtostring(real_zahl,"6.0",text_var);
filewrite("Anzahl der L<>schungen : "+ text_var);
INPAapiResultAnalog(real_zahl,"KM_STAND_LETZTER_LOESCHUNG_WERT",1);
realtostring(real_zahl,"6.0",text_var);
filewrite("Kilometerstand der letzten L<>schung : " +text_var+" km");
INPAapiResultAnalog(real_zahl,"ANZ_RENNSTARTS_WERT",1);
realtostring(real_zahl,"6.0",text_var);
filewrite("Anzahl der Rennstarts : "+ text_var);
filewrite("");
filewrite("Anzahl der ausgef<65>hrten Schaltungen Anzahl richtig pr<70>dizierten Schaltungen Anzahl falsch pr<70>dizierten Schaltungen");
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_1_WERT",1);
realtostring(real_zahl,"10.0",text_var);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_1_TRUE_WERT",1);
realtostring(real_zahl,"10.0",text_var1);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_1_FALSE_WERT",1);
realtostring(real_zahl,"10.0",text_var2);
filewrite("Gang 1 : " +text_var+ " Gang 1 : " +text_var1+ " Gang 1 : " +text_var2 );
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_2_WERT",1);
realtostring(real_zahl,"10.0",text_var);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_2_TRUE_WERT",1);
realtostring(real_zahl,"10.0",text_var1);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_2_FALSE_WERT",1);
realtostring(real_zahl,"10.0",text_var2);
filewrite("Gang 2 : " +text_var+ " Gang 2 : " +text_var1+ " Gang 2 : " +text_var2 );
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_3_WERT",1);
realtostring(real_zahl,"10.0",text_var);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_3_TRUE_WERT",1);
realtostring(real_zahl,"10.0",text_var1);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_3_FALSE_WERT",1);
realtostring(real_zahl,"10.0",text_var2);
filewrite("Gang 3 : " +text_var+ " Gang 3 : " +text_var1+ " Gang 3 : " +text_var2 );
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_4_WERT",1);
realtostring(real_zahl,"10.0",text_var);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_4_TRUE_WERT",1);
realtostring(real_zahl,"10.0",text_var1);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_4_FALSE_WERT",1);
realtostring(real_zahl,"10.0",text_var2);
filewrite("Gang 4 : " +text_var+ " Gang 4 : " +text_var1+ " Gang 4 : " +text_var2 );
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_5_WERT",1);
realtostring(real_zahl,"10.0",text_var);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_5_TRUE_WERT",1);
realtostring(real_zahl,"10.0",text_var1);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_5_FALSE_WERT",1);
realtostring(real_zahl,"10.0",text_var2);
filewrite("Gang 5 : " +text_var+ " Gang 5 : " +text_var1+ " Gang 5 : " +text_var2 );
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_6_WERT",1);
realtostring(real_zahl,"10.0",text_var);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_6_TRUE_WERT",1);
realtostring(real_zahl,"10.0",text_var1);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_6_FALSE_WERT",1);
realtostring(real_zahl,"10.0",text_var2);
filewrite("Gang 6 : " +text_var+ " Gang 6 : " +text_var1+ " Gang 6 : " +text_var2 );
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_7_WERT",1);
realtostring(real_zahl,"10.0",text_var);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_7_TRUE_WERT",1);
realtostring(real_zahl,"10.0",text_var1);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_7_FALSE_WERT",1);
realtostring(real_zahl,"10.0",text_var2);
filewrite("Gang 7 : " +text_var+ " Gang 7 : " +text_var1+ " Gang 7 : " +text_var2 );
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_N_WERT",1);
realtostring(real_zahl,"10.0",text_var);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_N_TRUE_WERT",1);
realtostring(real_zahl,"10.0",text_var1);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_N_FALSE_WERT",1);
realtostring(real_zahl,"10.0",text_var2);
filewrite("Gang N : " +text_var+ " Gang N : " +text_var1+ " Gang N : " +text_var2 );
filewrite("");
filewrite("Aufenthaltsdauer im jeweiligen <20>lsumpf-Temperaturbereich");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_KLEINER_MINUS_30_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich <-30 <20>C :" +text_var + " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_MINUS_30_BIS_MINUS_20_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich -30 bis -20 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_MINUS_20_BIS_MINUS_10_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich -20 bis -10 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_MINUS_10_BIS_0_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich -10 bis 0 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_0_BIS_10_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich 0 bis 10 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_10_BIS_20_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich 10 bis 20 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_20_BIS_30_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich 20 bis 30 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_30_BIS_40_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich 30 bis 40 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_40_BIS_50_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich 40 bis 50 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_50_BIS_60_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich 50 bis 60 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_60_BIS_70_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich 60 bis 70 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_70_BIS_80_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich 70 bis 80 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_80_BIS_90_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich 80 bis 90 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_90_BIS_100_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich 90 bis 100 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_100_BIS_110_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich 100 bis 110 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_110_BIS_120_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich 110 bis 120 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_120_BIS_130_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich 120 bis 130 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_130_BIS_140_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich 130 bis 140 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_140_BIS_150_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich 140 bis 150 <20>C :" +text_var+ " min");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_150_BIS_160_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
filewrite("Temperaturbereich 150 bis 160 <20>C :" +text_var+ " min");
filewrite("");
filewrite("Statistiken zur E-Schaltungen");
INPAapiResultInt(int_zahl,"ANZ_FAHRSTUFE_ANFORDERN_OHNE_BREMSE",1);
inttostring(int_zahl,text_var);
filewrite("Fahrstufe anfordern ohne Bremse : "+text_var);
INPAapiResultInt(int_zahl,"ANZ_R_GANG_ANFORDERN_UEBER_V_SCHWELLE",1);
inttostring(int_zahl,text_var);
filewrite("R-Gang anfordern bei v > 5km/h : "+text_var);
INPAapiResultInt(int_zahl,"ANZ_AUTO_P_FAHRZEUGVERLASSEN",1);
inttostring(int_zahl,text_var);
filewrite("Auto-P bei Fahrzeugverlassen : "+text_var);
INPAapiResultInt(int_zahl,"ANZ_P_ANFORDERN_V_UEBER_SCHWELLE",1);
inttostring(int_zahl,text_var);
filewrite("P anfordern bei v > 3,5km/h : "+text_var);
filewrite("");
filewrite("Statistik f<>r K1/K2");
INPAapiResultInt(int_zahl,"STAT_KUPPLUNGSTEMPERATUR_K1_MAX_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Max. Temperatur Kupplungstemperatur K1 : " +text_var+ "<22>C");
INPAapiResultAnalog(real_zahl,"ANZ_K1_MAX_TEMPERATUR",1);
real_zahl=real_zahl/187.5;
realtostring(real_zahl,"5.2",text_var);
filewrite("Aufenthaltsdauer max. Temperatur K1 : "+text_var+" min");
INPAapiResultInt(int_zahl,"STAT_KUPPLUNGSTEMPERATUR_K2_MAX_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Max. Temperatur Kupplungstemperatur K2 : "+text_var+"<22>C");
INPAapiResultAnalog(real_zahl,"ANZ_K2_MAX_TEMPERATUR",1);
real_zahl=real_zahl/187.5;
realtostring(real_zahl,"5.2",text_var);
filewrite("Aufenthaltsdauer max. Temperatur K2 : "+text_var+" min");
INPAapiJob(sgbd,"STATISTIKDATENSATZ_2_LESEN","","");
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K1_ADAPTIONEN",1);
inttostring(int_zahl,text_var);
filewrite("Anzahl durchgef<65>hrter Schleifpunktadaptionen K1 (Erfolgsz<73>hler) : "+text_var );
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K2_ADAPTIONEN",1);
inttostring(int_zahl,text_var);
filewrite("Anzahl durchgef<65>hrter Schleifpunktadaptionen K2 (Erfolgsz<73>hler) : "+text_var );
INPAapiResultInt(int_zahl,"KILOMETERSTAND_LETZTER_K1_ADAPTION_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Kilmeterstand der letzten erfolgreichen Adaption K1 : "+text_var+ " km");
INPAapiResultInt(int_zahl,"KILOMETERSTAND_LETZTER_K2_ADAPTION_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Kilmeterstand der letzten erfolgreichen Adaption K2 : "+text_var+ " km");
INPAapiResultAnalog(real_zahl,"KISSPOINT_K1_MIN_WERT",1);
realtostring(real_zahl,"2.2",text_var);
filewrite("Min. adaptierter Schleifpunkt : "+text_var+" bar");
INPAapiResultAnalog(real_zahl,"KISSPOINT_K2_MIN_WERT",1);
realtostring(real_zahl,"2.2",text_var);
filewrite("Min. adaptierter Kisspoint K2 : "+text_var+" bar");
INPAapiResultInt(int_zahl,"KILOMETERSTAND_K1_MIN_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Kilometerstand der letzen Min. Adaption K1 : " +text_var+ " km");
INPAapiResultInt(int_zahl,"KILOMETERSTAND_K2_MIN_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Kilometerstand der letzen Min. Adaption K2 : " +text_var+ " km");
INPAapiResultAnalog(real_zahl,"KISSPOINT_K1_MAX_WERT",1);
realtostring(real_zahl,"2.2",text_var);
filewrite("Max. adaptierter Kisspoint K1 : " +text_var+ " bar");
INPAapiResultAnalog(real_zahl,"KISSPOINT_K2_MAX_WERT",1);
realtostring(real_zahl,"2.2",text_var);
filewrite("Max. adaptierter Kisspoint K2 : " +text_var+ " bar");
INPAapiResultInt(int_zahl,"KILOMETERSTAND_K1_MAX_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Kilometerstand der letzen Max. Adaption K1 : "+text_var+" km");
INPAapiResultInt(int_zahl,"KILOMETERSTAND_K2_MAX_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Kilometerstand der letzen Max. Adaption K2 : "+text_var+" km");
filewrite("");
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K1_MAX50_WERT",1);
realtostring(real_zahl,"3.2",text_var);
filewrite("Kupplungsadaptionskennlinie K1 Max 50Nm : "+text_var);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K1_MIN50_WERT",1);
realtostring(real_zahl,"3.2",text_var);
filewrite("KupplungsadaptionskennlinieK1 Min 50Nm : "+text_var);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K1_MAX300_WERT",1);
realtostring(real_zahl,"3.2",text_var);
filewrite("KupplungsadaptionskennlinieK1 Max 300Nm : "+text_var);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K1_MIN300_WERT",1);
realtostring(real_zahl,"3.2",text_var);
filewrite("KupplungsadaptionskennlinieK1 Min 300Nm : "+text_var);
filewrite("");
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K2_MAX50_WERT",1);
realtostring(real_zahl,"3.2",text_var);
filewrite("KupplungsadaptionskennlinieK2 Max 50Nm : "+text_var);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K2_MIN50_WERT",1);
realtostring(real_zahl,"3.2",text_var);
filewrite("KupplungsadaptionskennlinieK2 Min 50Nm : "+text_var);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K2_MAX300_WERT",1);
realtostring(real_zahl,"3.2",text_var);
filewrite("KupplungsadaptionskennlinieK2 Max 300Nm : "+text_var);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K2_MIN300_WERT",1);
realtostring(real_zahl,"3.2",text_var);
filewrite("KupplungsadaptionskennlinieK2 Min 300Nm : "+text_var);
filewrite("");
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K1_300_BEI_MAX50_WERT",1);
realtostring(real_zahl,"3.2",text_var);
filewrite("KupplungsadaptionskennlinieK1 akt.Wert 300Nm bei Max 50Nm : "+text_var);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K1_300_BEI_MIN50_WERT",1);
realtostring(real_zahl,"3.2",text_var);
filewrite("KupplungsadaptionskennlinieK1 akt.Wert 300Nm bei Min 50Nm : "+text_var);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K1_50_BEI_MAX300_WERT",1);
realtostring(real_zahl,"3.2",text_var);
filewrite("KupplungsadaptionskennlinieK1 akt.Wert 50Nm bei Max 300Nm : "+text_var);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K1_50_BEI_MIN300_WERT",1);
realtostring(real_zahl,"3.2",text_var);
filewrite("KupplungsadaptionskennlinieK1 akt.Wert 50Nm bei Min 300Nm : "+text_var);
filewrite("");
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K2_300_BEI_MAX50_WERT",1);
realtostring(real_zahl,"3.2",text_var);
filewrite("KupplungsadaptionskennlinieK2 akt.Wert 300Nm bei Max 50Nm : "+text_var);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K2_300_BEI_MIN50_WERT",1);
realtostring(real_zahl,"3.2",text_var);
filewrite("KupplungsadaptionskennlinieK2 akt.Wert 300Nm bei Min 50Nm : "+text_var);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K2_50_BEI_MAX300_WERT",1);
realtostring(real_zahl,"3.2",text_var);
filewrite("KupplungsadaptionskennlinieK2 akt.Wert 50Nm bei Max 300Nm : "+text_var);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K2_50_BEI_MIN300_WERT",1);
realtostring(real_zahl,"3.2",text_var);
filewrite("Kupplungsadaptionskennlinie K2 akt.Wert 50Nm bei Min 300Nm : "+text_var);
filewrite("");
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K1_ADAPTIONEN_50NM",1);
inttostring(int_zahl,text_var);
filewrite("Adaptionsz<73>hler K1 50Nm : "+text_var);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K1_ADAPTIONEN_75NM",1);
inttostring(int_zahl,text_var);
filewrite("Adaptionsz<73>hler K1 75Nm : "+text_var);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K1_ADAPTIONEN_125NM",1);
inttostring(int_zahl,text_var);
filewrite("Adaptionsz<73>hler K1 125Nm : "+text_var);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K1_ADAPTIONEN_200NM",1);
inttostring(int_zahl,text_var);
filewrite("Adaptionsz<73>hler K1 200Nm : "+text_var);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K1_ADAPTIONEN_300NM",1);
inttostring(int_zahl,text_var);
filewrite("Adaptionsz<73>hler K1 300Nm : "+text_var);
filewrite("");
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K2_ADAPTIONEN_50NM",1);
inttostring(int_zahl,text_var);
filewrite("Adaptionsz<73>hler K2 50Nm : "+text_var);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K2_ADAPTIONEN_75NM",1);
inttostring(int_zahl,text_var);
filewrite("Adaptionsz<73>hler K2 75Nm : "+text_var);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K2_ADAPTIONEN_125NM",1);
inttostring(int_zahl,text_var);
filewrite("Adaptionsz<73>hler K2 125Nm : "+text_var);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K2_ADAPTIONEN_200NM",1);
inttostring(int_zahl,text_var);
filewrite("Adaptionsz<73>hler K2 200Nm : "+text_var);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K2_ADAPTIONEN_300NM",1);
inttostring(int_zahl,text_var);
filewrite("Adaptionsz<73>hler K2 300Nm : "+text_var);
filewrite("");
filewrite("Anzahl der durchgef<65>hrten Adaptionen f<>r PV6");
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_0_PV6_ADAPTIONEN",1);
inttostring(int_zahl,text_var);
filewrite("Z<>hler f<>r St<53>tzstelle 0 : "+text_var);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_1_PV6_ADAPTIONEN",1);
inttostring(int_zahl,text_var);
filewrite("Z<>hler f<>r St<53>tzstelle 1 : "+text_var);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_2_PV6_ADAPTIONEN",1);
inttostring(int_zahl,text_var);
filewrite("Z<>hler f<>r St<53>tzstelle 2 : "+text_var);
filewrite("");
filewrite("Aufenthaltsdauer der einzelnen Fahrmodi");
INPAapiJob(sgbd,"STATISTIKDATENSATZ_1_LESEN","","");
INPAapiResultInt(int_zahl,"STAT_ABSPRITZSSENSORTEMPERATUR_MAX_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Max. Temperatur Abspritzsensor : "+text_var+"<22>C");
INPAapiResultAnalog(real_zahl,"ANZ_MAX_TEMPERATUR_ABSPRITZSENSOR",1);
real_zahl=real_zahl/187.5;
realtostring(real_zahl,"5.2",text_var);
filewrite("Aufenthaltsdauer max. Temp. Abspritzsensor : "+text_var+" min");
filewrite("");
INPAapiResultInt(int_zahl,"STAT_FAHRZEUGTYP_WERT",1);
if ( int_zahl == 0)
{
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_3_WERT",1);
real_zahl= real_zahl /3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Automatik Normal : " +text_var+ " Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_4_WERT",1);
real_zahl= real_zahl /3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Automatik Sportlich : " +text_var+ " Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_5_WERT",1);
real_zahl= real_zahl /3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("S-Programm : " +text_var+ " Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_6_WERT",1);
real_zahl= real_zahl /3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("S-Programm Sport : " +text_var+ " Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_1_WERT",1);
real_zahl= real_zahl /3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Manuell Normal : " +text_var+ " Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_2_WERT",1);
real_zahl= real_zahl /3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Manuell Sportlich : " +text_var+ " Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_7_WERT",1);
real_zahl= real_zahl /3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Kurzzeit Manuell Normal : " +text_var+ " Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_8_WERT",1);
real_zahl= real_zahl /3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Kurzzeit Manuell Sportlich : " +text_var+ " Stunden");
}
if ( int_zahl ==1)
{
filewrite("Manuell 1 : " +text_var+ "Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_1_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Manuell 2 : " +text_var+ "Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_2_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Manuell 3 : " +text_var+ "Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_3_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Manuell 4 : " +text_var+ "Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_4_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Manuell 5 : " +text_var+ "Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_5_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Manuell 6 : " +text_var+ "Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_6_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Automatik 1 : " +text_var+ "Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_7_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Automatik 2 : " +text_var+ "Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_8_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Automatik 3 : "+text_var+ "Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_9_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Automatik 4 : " +text_var+ "Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_10_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Automatik 5 : " +text_var+ "Stunden");
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_11_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"5.2",text_var);
filewrite("Automatik 6 : " +text_var+ "Stunden");
}
filewrite("===============================================================================================");
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Adaptionswerte <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Adaptionswerte Kisspoint Kupplung 1 <<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
INPAapiJob(sgbd,"STATUS_ADAPTION_KUPPLUNGSSCHLEIFPUNKT_K1","","");
INPAapiResultAnalog(real_zahl,"STAT_K1_SCHLEIFPUNKT_FAKTOR_1_WERT",1);
realtostring(real_zahl,"3.3",text_var);
filewrite("Kupplungsschleifpunkt der im EOL : " + text_var+ " bar");
INPAapiResultAnalog(real_zahl,"STAT_K1_SCHLEIFPUNKT_FAKTOR_2_WERT",1);
realtostring(real_zahl,"3.3",text_var);
filewrite("Schleifpunkt der in der Werkstatt : " + text_var+ " bar");
INPAapiResultAnalog(real_zahl,"STAT_K1_SCHLEIFPUNKT_FAKTOR_3_WERT",1);
realtostring(real_zahl,"3.3",text_var);
filewrite("Schleifpunkt nach 10 Adaptionsschritten : " + text_var+ " bar");
INPAapiResultAnalog(real_zahl,"STAT_K1_SCHLEIFPUNKT_FAKTOR_4_WERT",1);
realtostring(real_zahl,"3.3",text_var);
filewrite("F<>r die Funktion relevante Kupplungsschleifpunkt : " + text_var+ " bar");
INPAapiResultAnalog(real_zahl,"STAT_K1_SCHLEIFPUNKT_FAKTOR_5_WERT",1);
realtostring(real_zahl,"3.3",text_var);
filewrite("Kleinster durch Adaption ermittelter Schleifpunkt : " + text_var+ " bar");
INPAapiResultAnalog(real_zahl,"STAT_K1_SCHLEIFPUNKT_FAKTOR_6_WERT",1);
realtostring(real_zahl,"3.3",text_var);
filewrite("Gr<47><72>ter durch Adaption ermittelter Schleifpunkt : " + text_var+ " bar");
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Adaptionswerte Kisspoint Kupplung 2 <<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
INPAapiJob(sgbd,"STATUS_ADAPTION_KUPPLUNGSSCHLEIFPUNKT_K2","","");
INPAapiResultAnalog(real_zahl,"STAT_K2_SCHLEIFPUNKT_FAKTOR_1_WERT",1);
realtostring(real_zahl,"3.3",text_var);
filewrite("Kupplungsschleifpunkt der im EOL : " + text_var+ " bar");
INPAapiResultAnalog(real_zahl,"STAT_K2_SCHLEIFPUNKT_FAKTOR_2_WERT",1);
realtostring(real_zahl,"3.3",text_var);
filewrite("Schleifpunkt der in der Werkstatt : " + text_var+ " bar");
INPAapiResultAnalog(real_zahl,"STAT_K2_SCHLEIFPUNKT_FAKTOR_3_WERT",1);
realtostring(real_zahl,"3.3",text_var);
filewrite("Schleifpunkt nach 10 Adaptionsschritten : " + text_var+ " bar");
INPAapiResultAnalog(real_zahl,"STAT_K2_SCHLEIFPUNKT_FAKTOR_4_WERT",1);
realtostring(real_zahl,"3.3",text_var);
filewrite("F<>r die Funktion relevante Kupplungsschleifpunkt : " + text_var+ " bar");
INPAapiResultAnalog(real_zahl,"STAT_K2_SCHLEIFPUNKT_FAKTOR_5_WERT",1);
realtostring(real_zahl,"3.3",text_var);
filewrite("Kleinster durch Adaption ermittelter Schleifpunkt : " + text_var+ " bar");
INPAapiResultAnalog(real_zahl,"STAT_K2_SCHLEIFPUNKT_FAKTOR_6_WERT",1);
realtostring(real_zahl,"3.3",text_var);
filewrite("Gr<47><72>ter durch Adaption ermittelter Schleifpunkt : " + text_var+ " bar");
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>> Adaptionswerte Kupplungsmomentenkennlinie Kupplung 1 <<<<<<<<<<<<<<<");
filewrite("");
INPAapiJob(sgbd,"STATUS_ADAPTION_MOMENTENKENNLINIE_K1","","");
INPAapiResultAnalog(real_zahl,"STAT_K1_MOMENTENKENNLINIE_FAKTOR_1_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Momentenkennlinie Faktor 1 : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_K1_MOMENTENKENNLINIE_FAKTOR_2_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Momentenkennlinie Faktor 2 : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_K1_MOMENTENKENNLINIE_FAKTOR_3_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Momentenkennlinie Faktor 3 : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_K1_MOMENTENKENNLINIE_FAKTOR_4_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Momentenkennlinie Faktor 4 : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_K1_MOMENTENKENNLINIE_FAKTOR_5_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Momentenkennlinie Faktor 5 : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_K1_MOMENTENKENNLINIE_FAKTOR_6_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Momentenkennlinie Faktor 6 : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_K1_MOMENTENKENNLINIE_FAKTOR_7_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Momentenkennlinie Faktor 7 : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_K1_MOMENTENKENNLINIE_FAKTOR_8_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Momentenkennlinie Faktor 8 : " + text_var);
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>> Adaptionswerte Kupplungsmomentenkennlinie Kupplung 2 <<<<<<<<<<<<<<<<<<");
filewrite("");
INPAapiJob(sgbd,"STATUS_ADAPTION_MOMENTENKENNLINIE_K2","","");
INPAapiResultAnalog(real_zahl,"STAT_K2_MOMENTENKENNLINIE_FAKTOR_1_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Momentenkennlinie Faktor 1 : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_K2_MOMENTENKENNLINIE_FAKTOR_2_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Momentenkennlinie Faktor 2 : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_K2_MOMENTENKENNLINIE_FAKTOR_3_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Momentenkennlinie Faktor 3 : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_K2_MOMENTENKENNLINIE_FAKTOR_4_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Momentenkennlinie Faktor 4 : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_K2_MOMENTENKENNLINIE_FAKTOR_5_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Momentenkennlinie Faktor 5 : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_K2_MOMENTENKENNLINIE_FAKTOR_6_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Momentenkennlinie Faktor 6 : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_K2_MOMENTENKENNLINIE_FAKTOR_7_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Momentenkennlinie Faktor 7 : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_K2_MOMENTENKENNLINIE_FAKTOR_8_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Momentenkennlinie Faktor 8 : " + text_var);
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Ventilkennlinie PV1 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
INPAapiJob(sgbd,"STATUS_VENTILKENNLINIE_PV1","","");
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_1_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 1 : " + text_var+ " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_2_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 2 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_3_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 3 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_4_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 4 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_5_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 5 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_6_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 6 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_7_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 7 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_8_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 8 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_9_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 9 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_10_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 10 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_11_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 11 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_12_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 12 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_13_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 13 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_14_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 14 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_15_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 15 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_16_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 16 : " + text_var + " bar");
filewrite("");
INPAapiResultBinary("_TEL_ANTWORT",1);
GetBinaryDataString(text_var,j);
j=j-14;
midstr(text_var1,text_var,12,j);
strlen(j,text_var1);
i=0;
while (i <= j)
{
text_var2="";
text1="0x";
text_var="";
midstr(text_var2,text_var1,i,2);
strcat(text_var,text1,text_var2);
stringtoint(text_var,int_zahl);
inttostring(int_zahl,text_var);
text_var2=";";
text1="0x";
strcat(text1,text_var,text_var2);
strcat(text2,text2,text1);
text_var="";
text_var2="";
i=i+2;
}
strlen(j,text2);
midstr(text_var,text2,0,j-2);
filewrite("Dez. Werte : " +text_var);
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Ventilkennlinie PV2 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
INPAapiJob(sgbd,"STATUS_VENTILKENNLINIE_PV2","","");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_1_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 1 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_2_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 2 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_3_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 3 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_4_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 4 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_5_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 5 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_6_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 6 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_7_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 7 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_8_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 8 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_9_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 9 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_10_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 10 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_11_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 11 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_12_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 12 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_13_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 13 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_14_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 14 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_15_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 15 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_16_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 16 : " + text_var + " bar");
filewrite("");
filewrite("");
INPAapiResultBinary("_TEL_ANTWORT",1);
GetBinaryDataString(text_var,j);
j=j-14;
midstr(text_var1,text_var,12,j);
strlen(j,text_var1);
i=0;
text1="";
text2="";
while (i <= j)
{
text_var2="";
text1="0x";
text_var="";
midstr(text_var2,text_var1,i,2);
//filewrite("Text_var " +text_var2);
strcat(text_var,text1,text_var2);
//filewrite(text_var);
stringtoint(text_var,int_zahl);
inttostring(int_zahl,text_var);
//filewrite(text_var);
text_var2=";";
text1="0x";
strcat(text1,text_var,text_var2);
strcat(text2,text2,text1);
text_var="";
text_var2="";
i=i+2;
}
strlen(j,text2);
midstr(text_var,text2,0,j-2);
filewrite("Dez. Werte : " +text_var);
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Ventilkennlinie PV6 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
INPAapiJob(sgbd,"STATUS_VENTILKENNLINIE_PV6","","");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_1_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 1 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_2_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 2 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_3_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 3 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_4_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 4 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_5_WERT",1);
realtostring(real_zahl,"2.3",text_var);;
filewrite("Ventilkennlinie Faktor 5 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_6_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 6 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_7_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 7 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_8_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 8 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_9_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 9 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_10_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 10 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_11_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 11 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_12_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 12 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_13_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 13 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_14_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 14 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_15_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 15 : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_16_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Ventilkennlinie Faktor 16 : " + text_var + " bar");
filewrite("");
filewrite("");
INPAapiResultBinary("_TEL_ANTWORT",1);
GetBinaryDataString(text_var,j);
j=j-14;
midstr(text_var1,text_var,12,j);
strlen(j,text_var1);
i=0;
text1="";
text2="";
while (i <= j)
{
text_var2="";
text1="0x";
text_var="";
midstr(text_var2,text_var1,i,2);
strcat(text_var,text1,text_var2);
stringtoint(text_var,int_zahl);
inttostring(int_zahl,text_var);
text_var2=";";
text1="0x";
strcat(text1,text_var,text_var2);
strcat(text2,text2,text1);
text_var="";
text_var2="";
i=i+2;
}
strlen(j,text2);
midstr(text_var,text2,0,j-2);
filewrite("Dez. Werte : " +text_var);
filewrite("");
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Adaptionswerte PV6 <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
INPAapiJob(sgbd,"STATUS_ADAPTIONSWERT_PV6","","");
INPAapiResultAnalog(real_zahl,"STAT_ADAPTIONSWERT_PV6_STUETZSTELLE_0_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Adaptionswerte f<>r Ventilkennlinie PV6 ( St<53>tzstelle 0) : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_ADAPTIONSWERT_PV6_STUETZSTELLE_1_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Adaptionswerte f<>r Ventilkennlinie PV6 ( St<53>tzstelle 1) : " + text_var + " bar");
INPAapiResultAnalog(real_zahl,"STAT_ADAPTIONSWERT_PV6_STUETZSTELLE_2_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Adaptionswerte f<>r Ventilkennlinie PV6 ( St<53>tzstelle 2) : " + text_var + " bar");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Sperrventil PV7 >><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
INPAapiJob(sgbd,"STATUS_SPERRSTELLUNG_PV7","","");
INPAapiResultInt(int_zahl,"STAT_PV7_SPERRVENTIL_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Sperrventil : " + text_var );
filewrite("");
INPAapiResultBinary("_TEL_ANTWORT",1);
GetBinaryDataString(text_var,j);
j=j-14;
midstr(text_var1,text_var,12,j);
strlen(j,text_var1);
i=0;
text1="";
text2="";
while (i <= j)
{
text_var2="";
text1="0x";
text_var="";
midstr(text_var2,text_var1,i,2);
strcat(text_var,text1,text_var2);
stringtoint(text_var,int_zahl);
inttostring(int_zahl,text_var);
text_var2=";";
text1="0x";
strcat(text1,text_var,text_var2);
strcat(text2,text2,text1);
text_var="";
text_var2="";
i=i+2;
}
strlen(j,text2);
midstr(text_var,text2,0,j-2);
filewrite("Dez. Werte : " +text_var);
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Adaptionswerte Getriebe Einlernen <<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
INPAapiJob(sgbd,"STATUS_GETRIEBE_TEACHEN","","");
INPAapiResultAnalog(real_zahl,"STAT_FAKTOR_AMPLITUDE_TIN_AMP_0_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Faktor der Amplitude tin_amp_[0] : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_FAKTOR_AMPLITUDE_TIN_AMP_1_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Faktor der Amplitude tin_amp_[1] : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_FAKTOR_AMPLITUDE_TIN_AMP_2_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Faktor der Amplitude tin_amp_[2] : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_FAKTOR_AMPLITUDE_TIN_AMP_3_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Faktor der Amplitude tin_amp_[3] : " + text_var);
INPAapiResultAnalog(real_zahl,"STAT_VERSCHIEBUNG_KENNLINIE_TIN_P0_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Verschiebung der Kennlinie tin_p_[0] : " + text_var + " mm");
INPAapiResultAnalog(real_zahl,"STAT_VERSCHIEBUNG_KENNLINIE_TIN_P1_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Verschiebung der Kennlinie tin_p_[1] : " + text_var + " mm");
INPAapiResultAnalog(real_zahl,"STAT_VERSCHIEBUNG_KENNLINIE_TIN_P2_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Verschiebung der Kennlinie tin_p_[2] : " + text_var + " mm");
INPAapiResultAnalog(real_zahl,"STAT_VERSCHIEBUNG_KENNLINIE_TIN_P3_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Verschiebung der Kennlinie tin_p_[3] : " + text_var + " mm");
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_GANG_1_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Nachadaptionswert 1. Gang : " + text_var + " mm");
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_GANG_2_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Nachadaptionswert 2. Gang : " + text_var + " mm");
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_GANG_3_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Nachadaptionswert 3. Gang : " + text_var + " mm");
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_GANG_4_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Nachadaptionswert 4. Gang : " + text_var + " mm");
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_GANG_5_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Nachadaptionswert 5. Gang : " + text_var + " mm");
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_GANG_6_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Nachadaptionswert 6. Gang : " + text_var + " mm");
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_GANG_7_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Nachadaptionswert 7. Gang : " + text_var + " mm");
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_GANG_R_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Nachadaptionswert R<>ckw<6B>rtsgang : " + text_var + " mm");
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_NEUTRAL_SST_1_3_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Nachadaptionswert Schaltstange 1/3 : " + text_var + " mm");
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_NEUTRAL_SST_2_R_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Nachadaptionswert Schaltstange 2/R : " + text_var + " mm");
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_NEUTRAL_SST_5_7_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Nachadaptionswert Schaltstange 5/7 : " + text_var + " mm");
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_NEUTRAL_SST_6_4_WERT",1);
realtostring(real_zahl,"2.3",text_var);
filewrite("Nachadaptionswert Schaltstange 6/4 : " + text_var + " mm");
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Allgemeine Adaptionswerte <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
INPAapiJob(sgbd,"STATUS_ADAPTIONSWERT_GETRIEBECODE","","");
filewrite("Adaption Getriebecode");
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_1_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Wert 1 : "+text_var);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_2_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Wert 2 : "+text_var);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_3_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Wert 3 : "+text_var);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_4_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Wert 4 : "+text_var);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_5_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Wert 5 : "+text_var);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_6_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Wert 6 : "+text_var);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_7_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Wert 7 : "+text_var);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_8_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Wert 8 : "+text_var);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_9_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Wert 9 : "+text_var);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_10_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Wert 10 : "+text_var);
INPAapiResultBinary("_TEL_ANTWORT",1);
GetBinaryDataString(text_var,j);
j=j-14;
midstr(text_var1,text_var,12,j);
strlen(j,text_var1);
i=0;
text1="";
text2="";
while (i <= j)
{
text_var2="";
text1="0x";
text_var="";
midstr(text_var2,text_var1,i,2);
strcat(text_var,text1,text_var2);
stringtoint(text_var,int_zahl);
inttostring(int_zahl,text_var);
text_var2=";";
text1="0x";
strcat(text1,text_var,text_var2);
strcat(text2,text2,text1);
text_var="";
text_var2="";
i=i+2;
}
strlen(j,text2);
midstr(text_var,text2,0,j-2);
filewrite("Dez. Werte : " +text_var);
filewrite("");
filewrite("");
INPAapiJob(sgbd,"STATUS_ADAPTIONSWERT_RADSATZVARIANTE","","");
INPAapiResultInt(int_zahl,"STAT_ADAPTION_RADSATZVARIANTE_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Adaptionswert Radsatzvariante : "+text_var);
INPAapiJob(sgbd,"STATUS_ADAPTIONSWERT_HYDRAULIKPUMPE","","");
INPAapiResultInt(int_zahl,"STAT_ADAPTION_HYDRAULIKPUMPE_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Adaptionswert Hydraulikpumpe : "+text_var);
INPAapiJob(sgbd,"STATUS_ADAPTIONSWERT_TEMPERATURSENSOR","","");
INPAapiResultInt(int_zahl,"STAT_ADAPTION_TEMPERATURSENSOR_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Adaptionswert Temperatursensor Abspritz<74>l : "+text_var);
INPAapiJob(sgbd,"STATUS_ADAPTIONSWERT_TEMPERATURSENSOR_WIDERSTAND","","");
INPAapiResultInt(int_zahl,"STAT_ADAPTION_TEMPERATURSENSOR_WIDERSTAND_WERT",1);
inttostring(int_zahl,text_var);
filewrite("Adaptionswert Abspritz<74>l Pull-Up Widerstand : "+text_var+ " Ohm");
INPAapiResultBinary("_TEL_ANTWORT",1);
GetBinaryDataString(text_var,j);
j=j-14;
midstr(text_var1,text_var,12,j);
strlen(j,text_var1);
i=0;
text1="";
text2="";
while (i <= j)
{
text_var2="";
text1="0x";
text_var="";
midstr(text_var2,text_var1,i,2);
strcat(text_var,text1,text_var2);
stringtoint(text_var,int_zahl);
inttostring(int_zahl,text_var);
text_var2=";";
text1="0x";
strcat(text1,text_var,text_var2);
strcat(text2,text2,text1);
text_var="";
text_var2="";
i=i+2;
}
strlen(j,text2);
midstr(text_var,text2,0,j-2);
filewrite("Dez. Werte : " +text_var);
filewrite("");
filewrite("");
//--------------------------------------------------------------------------------------------------------
// Debugging Information Speichern
//--------------------------------------------------------------------------------------------------------
filewrite("=============================================================================================");
filewrite("");
filewrite(">>>>>>>>>>>>>>>>>>>>>>>>>>>>>> Debugging Information<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
filewrite("");
INPAapiJob(sgbd,"DEBUGGING_INFORMATION","","");
INPAapiResultBinary("DATEN_HEX",1);
GetBinaryDataString(text_var1,j);
strlen(slaenge,text_var1);
if (slaenge>=70)
{
midstr(text_var,text_var1,0,70);
filewrite(text_var);
}
else
{
midstr(text_var,text_var1,0,slaenge);
filewrite(text_var);
}
if (slaenge>140)
{
midstr(text_var,text_var1,70,70);
filewrite(text_var);
}
if ((slaenge>70) && (slaenge <=140))
{
midstr(text_var,text_var1,70,slaenge-70);
filewrite(text_var);
}
if (slaenge>210)
{
midstr(text_var,text_var1,210,70);
filewrite(text_var);
}
if ((slaenge>140) && (slaenge <=210))
{
midstr(text_var,text_var1,70,slaenge-70);
filewrite(text_var);
}
if (slaenge>280)
{
midstr(text_var,text_var1,280,70);
filewrite(text_var);
}
if ((slaenge>210) && (slaenge <=280))
{
midstr(text_var,text_var1,70,slaenge-70);
filewrite(text_var);
}
//filewrite(text_var);
filewrite("");
}
// ****************************************************
// *** Initialisierungsfunktion ***
// ****************************************************
ScriptInit()
{
settitle(titel+" Version "+version);
}
// ****************************************************
// *** M e n <20> a u f b a u ***
// ****************************************************
// **************************
// *** Statusmen<65> ***
// **************************
MENU m_status()
{
INIT {
setmenutitle("Status lesen");
}
ITEM( 1 ,"Analog") {
setscreen( s_status_analog ,TRUE);
setmenu(m_status_analog);
}
ITEM( 2 ,"Digital") {
setscreen( s_status_digital ,TRUE);
}
ITEM( 3 ,"Sonstige") {
setscreen( s_status_sonstige ,TRUE);
setmenu(m_status_sonstige);
}
ITEM( 4 ,"Adationswerte") {
setscreen( s_status_adaptionen ,TRUE);
setmenu(m_status_adaptionen);
}
ITEM( 5 ,"Kennlinien") {
setscreen( s_status_kennlinie ,TRUE);
}
ITEM( 6 ,"Statistik") {
setscreen( s_status_statistik ,TRUE);
setmenu(m_status_statistik);
}
ITEM( 7 ,"") {
setscreen( s_status ,TRUE);
}
ITEM( 8 ,"Auswahl") {
start();
select(TRUE);
}
ITEM( 11,"Speichern")
{
speichern();
setscreen(s_status,TRUE);
setmenu(m_status);
}
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();
}
}
// **************************
// *** Status Analog Men<65> ***
// **************************
MENU m_status_analog()
{
INIT {
setmenutitle("Status lesen");
}
ITEM( 1 ,"Analog 1") {
setscreen( s_status_analog1 ,TRUE);
}
ITEM( 2 ,"Analog 2") {
setscreen( s_status_analog2 ,TRUE);
}
ITEM( 3 ,"Analog 3") {
setscreen( s_status_analog3 ,TRUE);
}
ITEM( 4 ,"Analog 4") {
setscreen( s_status_analog4 ,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();
}
}
// **************************
// *** Status Sonstige Men<65> ***
// **************************
MENU m_status_sonstige()
{
INIT {
setmenutitle("Status lesen");
}
ITEM( 1 ,"Sonstige 1") {
setscreen( s_status_sonstige1 ,TRUE);
}
ITEM( 2 ,"Sonstige 2") {
setscreen( s_status_sonstige2 ,TRUE);
}
ITEM( 9 ,"Druck") {
printscreen();
}
ITEM( 10 ,"Zur<75>ck") {
setscreen( s_main ,TRUE);
setmenu( m_main );
}
ITEM( 20 ,"Exit") {
exit();
}
}
// **************************
// *** Status Adapionen Men<65> ***
// **************************
MENU m_status_adaptionen()
{
INIT {
setmenutitle("Status lesen");
}
ITEM( 1 ,"Adaptionen 1") {
setscreen( s_status_adaptionen1 ,TRUE);
}
ITEM( 2 ,"Adaptionen 2") {
setscreen( s_status_adaptionen2 ,TRUE);
}
ITEM( 9 ,"Druck") {
printscreen();
}
ITEM( 10 ,"Zur<75>ck") {
setscreen( s_main ,TRUE);
setmenu( m_main );
}
ITEM( 20 ,"Exit") {
exit();
}
}
// **************************
// *** Status Statistik Men<65> ***
// **************************
MENU m_status_statistik()
{
INIT {
setmenutitle("Status lesen");
}
ITEM( 1 ,"Statistik 1") {
setscreen( s_status_statistik1 ,TRUE);
}
ITEM( 2 ,"Statistik 2") {
setscreen( s_status_statistik2 ,TRUE);
}
ITEM( 3 ,"Statistik 3") {
setscreen( s_status_statistik3 ,TRUE);
}
ITEM( 4 ,"Statistik 4") {
setscreen( s_status_statistik4 ,TRUE);
}
ITEM( 5 ,"Statistik 5") {
setscreen( s_status_statistik3 ,TRUE);
}
ITEM(6,"L<>schen")
{
userboxclose(0);
viewclose();
inputdigital(bool_var,"Statistikdaten l<>schen",
"Wollen Sie die Statistikdaten wirklich l<>schen?"+CRLF+
"Auswahl <20>ber Cursortasten",
"Ja","Nein");
getinputstate(input_state);
if((input_state==input_ok) && (!bool_var))
{
userboxopen(0,8,20,3,50,"Statistikdaten l<>schen","");
userboxftextout(0,"Statistikdaten werden gel<65>scht!",1,0,0,1);
INPAapiJob(sgbd,"STATISTIKDATEN_LOESCHEN","ja","");
delay(3000);
userboxclose(0);
}
}
ITEM( 9 ,"Druck") {
printscreen();
}
ITEM( 10 ,"Zur<75>ck") {
setscreen( s_main ,TRUE);
setmenu( m_main );
}
ITEM( 20 ,"Exit") {
exit();
}
}
// **************************
// *** Steuernmen<65> ***
// **************************
MENU m_steuern()
{
INIT {
setmenutitle("Steuern");
}
ITEM( 1 ,"Kupplung") {
setscreen(s_steuern_kupplung,TRUE);
setmenu(m_steuern_kupplung);
}
ITEM( 2 , "Getrebe") {
setscreen(s_steuern_getriebe,TRUE);
setmenu(m_steuern_getriebe);
}
ITEM( 9 ,"Druck") {
printscreen();
}
ITEM( 10 ,"Zur<75>ck") {
setscreen( s_main ,TRUE);
setmenu( m_main );
}
ITEM( 20 ,"Exit") {
exit();
}
}
// **************************
// *** Steuernmen<65> Kupplung ***
// **************************
MENU m_steuern_kupplung()
{
INIT {
setmenutitle("Steuern");
}
ITEM(1,"Werkstatt")
{
userboxopen(1,10,10,3,50,"TESTPROGRAMM WIRD GESTARTET","");
userboxftextout(1,"Schleifpunkt 1 + 2 einlernen wird gestartet. Bitte warten ....",1,0,0,1);
delay(2000);
INPAapiJob(sgbd,"STEUERN_TESTPRG_STARTEN","0x30;0x01","");
userboxclose(1);
te_id="0x30;";
int_id=0x30;
te_job="Kupplungsschleifpunkt 1 + 2 einlernen";
setscreen(s_steuern_abfragen,TRUE);
setmenu(m_steuern_abfragen);
}
ITEM( 9 ,"Druck") {
printscreen();
}
ITEM( 10 ,"Zur<75>ck") {
setscreen( s_main ,TRUE);
setmenu( m_main );
}
ITEM( 20 ,"Exit") {
exit();
}
}
// **************************
// *** Steuernmen<65> Getriebe ***
// **************************
MENU m_steuern_getriebe()
{
INIT {
setmenutitle("Steuern");
}
ITEM(1,"Einlernen")
{
userboxopen(1,10,10,3,50,"GETRIEBE EINLERNEN","");
userboxftextout(1,"Getriebe einlernen wird gestartet. Bitte warten ....",1,0,0,1);
delay(2000);
INPAapiJob(sgbd,"STEUERN_TESTPRG_STARTEN","0x32;","");
userboxclose(1);
te_id="0x32;";
int_id=0x32;
te_job="Getriebe einlernen";
setscreen(s_steuern_abfragen,TRUE);
setmenu(m_steuern_abfragen);
}
ITEM( 9 ,"Druck") {
printscreen();
}
ITEM( 10 ,"Zur<75>ck") {
setscreen( s_main ,TRUE);
setmenu( m_main );
}
ITEM( 20 ,"Exit") {
exit();
}
}
// **************************
// *** Steuernmen<65> Abfragen ***
// **************************
MENU m_steuern_abfragen()
{
INIT {
setmenutitle("Steuern");
}
ITEM( 9 ,"Druck") {
printscreen();
}
ITEM( 10 ,"Zur<75>ck") {
if ( int_id == 0x30)
{
userboxclose(0);
userboxclose(1);
userboxopen(2,10,10,3,50,"TESTPROGRAMM WIRD BEENDET","");
userboxftextout(2,"Testprogramm wird beendet. Bitte warten ....",1,0,0,1);
INPAapiJob(sgbd,"STEUERN_TESTPRG_STOP","0x30","");
delay(2000);
userboxclose(2);
viewclose();
setscreen(s_steuern_kupplung,TRUE);
setmenu(m_steuern_kupplung);
}
if ( int_id == 0x32)
{
userboxclose(0);
userboxclose(1);
userboxopen(2,10,10,3,50,"TESTPROGRAMM WIRD BEENDET","");
userboxftextout(2,"Testprogramm wird beendet. Bitte warten ....",1,0,0,1);
INPAapiJob(sgbd,"STEUERN_TESTPRG_STOP","0x32","");
delay(2000);
userboxclose(2);
viewclose();
setscreen(s_steuern_getriebe,TRUE);
setmenu(m_steuern_getriebe);
}
}
}
// ****************************************************
// *** 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 > Status Analog lesen" , 4,5,0,1);
ftextout("< F2 > Status Digital lesen" , 6,5,0,1);
ftextout("< F3 > Sonstige" , 8,5,0,1);
ftextout("< F4 > Adaptionswerte" ,10,5,0,1);
ftextout("< F5 > Kennlinien" ,12,5,0,1);
ftextout("< F6 > Statistik" ,14,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 > Alles Speichern",16,45,0,1);
ftextout("<Shift> + < F8 > Gesamt" ,18,45,0,1);
ftextout("<Shift> + < F10> Exit" ,22,45,0,1);
}
}
// **************************
// *** StatusAnalogscreen ***
// **************************
SCREEN s_status_analog()
{
ftextout("Status Analog lesen",1,0,1,0);
ftextout("",3,0,0,0);
LINE("","")
{
ftextout("< F1 > Analogwerte 1" , 4,5,0,1); ftextout("( Temperatur, Spannung, Sensorversorgung )",4,25,0,1);
ftextout("< F2 > Analogwerte 2" , 6,5,0,1); ftextout("( Geschwindigkeit, Drehzahlen, Fahrpedal )",6,25,0,1);
ftextout("< F3 > Analogwerte 3" , 8,5,0,1); ftextout("( Ist-Soll Vergleich Kupplung und PVxq, Systemdruck, OBD, MIL )",8,25,0,1);
ftextout("< F4 > Analogwerte 4" ,10,5,0,1); ftextout("( Rohwerte )",10,25,0,1);
ftextout("<Shift> + < F8 > Gesamt" ,18,45,0,1);
ftextout("<Shift> + < F10> Exit" ,22,45,0,1);
}
}
// **************************
// *** StatusAnalog1screen ***
// **************************
SCREEN s_status_analog1()
{
ftextout("Status Analogwerte 1 lesen",1,0,1,0);
ftextout("",3,0,0,0);
INPAapiJob(sgbd,"STATUS_ISTWERTE_LESEN","","");
INPAapiCheckJobStatus("OKAY");
LINE("","")
{
ftextout("Motortemperatur [<5B>C]",1,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_MOTORTEMPERATUR_WERT",1);
analogout(real_zahl,2,0,-40,150,-40,150,"");
ftextout("Motor<6F>ltemperatur [<5B>C]",6,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_MOTOROELTEMPERATUR_WERT",1);
analogout(real_zahl,7,0,-40,150,-40,150,"");
ftextout("Kupplungs<67>ltemperatur [<5B>C]",12,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_KUPPLUNGSOELTEMPERATUR_WERT",1);
analogout(real_zahl,13,0,-40,150,-40,150,"");
ftextout("SG-Temperatur [<5B>C]",18,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_SG_TEMPERATUR_WERT",1);
analogout(real_zahl,19,0,-40,150,-40,150,"");
ftextout("Umgebungstemperatur [<5B>C]",24,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_UMGEBUNGSTEMPERATUR_WERT",1);
analogout(real_zahl,25,0,-40,150,-40,150,"");
ftextout("Batteriespannung [V]",1,50,0,1);
INPAapiResultAnalog(real_zahl,"STAT_UBAT_WERT",1);
analogout(real_zahl,2,50,0,20,0,20,"");
ftextout("Sensorspannungsversorgung 7V4_UH2 [V]",6,50,0,1);
INPAapiResultAnalog(real_zahl,"STAT_SPANNUNGSVERSORGUNG_7V4_WERT",1);
analogout(real_zahl,7,50,0,12,6.6,8.2,"");
ftextout("Versorgung f<>r Drehzahl-, Parksperren-,",9,50,0,0);
ftextout("Temperatursensoren und Schaltwippen",10,50,0,0);
ftextout("Sensorspannungsversorgung VCC [V]",12,50,0,1);
INPAapiResultAnalog(real_zahl,"STAT_SENSORSPANNUNGSVERSORGUNG_VCC_WERT",1);
analogout(real_zahl,13,50,0,12,4.75,5.25,"");
ftextout("Versorgung f<>r Drucksensoren der Kupplung",15,50,0,0);
ftextout("Sensorspannungsversorgung SV1 [V]",18,50,0,1);
INPAapiResultAnalog(real_zahl,"STAT_SENSORSPANNUNGSVERSORGUNG_SV1_WERT",1);
analogout(real_zahl,19,50,0,12,4.75,5.25,"");
ftextout("Versorgung Positionssensor SST 1_3 und SST 5_7",21,50,0,0);
ftextout("Sensorspannungsversorgung SV2 [V]",24,50,0,1);
INPAapiResultAnalog(real_zahl,"STAT_SENSORSPANNUNGSVERSORGUNG_SV2_WERT",1);
analogout(real_zahl,25,50,0,12,4.75,5.25,"");
ftextout("Versorgung Positionssensor SST 6_4 und SST 2_R",27,50,0,0);
}
}
// **************************
// *** StatusAnalog2screen ***
// **************************
SCREEN s_status_analog2()
{
ftextout("Status Analogwerte 2 lesen",1,0,1,0);
ftextout("",3,0,0,0);
INPAapiJob(sgbd,"STATUS_ISTWERTE_LESEN","","");
INPAapiCheckJobStatus("OKAY");
LINE("","")
{
ftextout("Fzg Geschwindigkeit [km/h]",1,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_GESCHWINDIGKEIT_WERT",1);
analogout(real_zahl,2,0,0,250,0,250,"");
ftextout("Motordrehzahl [1/min]",5,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_MOTORDREHZAHL_WERT",1);
analogout(real_zahl,6,0,0,10000,0,7000,"");
ftextout("Getriebe Eingangsdrehzahl 1 [1/min]",9,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_EINGANGSDREHZAHL1_WERT",1);
analogout(real_zahl,10,0,0,10000,0,10000,"");
ftextout("Getriebe Eingangsdrehzahl 2 [1/min]",13,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_EINGANGSDREHZAHL2_WERT",1);
analogout(real_zahl,14,0,0,10000,0,10000,"");
ftextout("Getriebe Ausgangsdrehzahl [1/min]",17,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_AUSGANGSDREHZAHL_WERT",1);
analogout(real_zahl,18,0,0,10000,0,10000,"");
ftextout("Fahrpedal [%]",21,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_FAHRPEDAL_WERT",1);
analogout(real_zahl,22,0,0,100,0,100,"");
ftextout("Geschwindigkeit Hinterachse [km/h]",1,50,0,1);
INPAapiResultAnalog(real_zahl,"STAT_GESCHWINDIGKEIT_HINTERACHSE_WERT",1);
analogout(real_zahl,2,50,0,250,0,250,"");
ftextout("Radgeschwindigkeit VL [km/h]",5,50,0,1);
INPAapiResultAnalog(real_zahl,"STAT_RADGESCHWINDIGKEIT_VL_WERT",1);
analogout(real_zahl,6,50,0,250,0,250,"");
ftextout("Radgeschwindigkeit VR [km/h]",9,50,0,1);
INPAapiResultAnalog(real_zahl,"STAT_RADGESCHWINDIGKEIT_VR_WERT",1);
analogout(real_zahl,10,50,0,250,0,250,"");
ftextout("Radgeschwindigkeit HL [km/h]",13,50,0,1);
INPAapiResultAnalog(real_zahl,"STAT_RADGESCHWINDIGKEIT_HL_WERT",1);
analogout(real_zahl,14,50,0,250,0,250,"");
ftextout("Radgeschwindigkeit HR [km/h]",17,50,0,1);
INPAapiResultAnalog(real_zahl,"STAT_RADGESCHWINDIGKEIT_HR_WERT",1);
analogout(real_zahl,18,50,0,250,0,250,"");
ftextout("Querbeschleunigung von CAN [m/s2]",21,50,0,1);
INPAapiResultAnalog(real_zahl,"STAT_AQUER_CAN_WERT",1);
analogout(real_zahl,22,50,-51,51,-51,51,"");
}
}
// **************************
// *** StatusAnalog3screen ***
// **************************
SCREEN s_status_analog3()
{
ftextout("Status Analogwerte 3 lesen",1,0,1,0);
ftextout("",3,0,0,0);
INPAapiJob(sgbd,"STATUS_ISTWERTE_LESEN","","");
INPAapiCheckJobStatus("OKAY");
LINE("","")
{
ftextout("IST",1,20,1,1);
ftextout("SOLL",1,48,1,1);
ftextout("Moment : Motor",4,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_MOTORISTMOMENT_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+ " Nm ",4,20,0,1);
ftextout("Moment : Kupplung 1",5,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_ISTMOMENT_KUPPLUNG1_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " Nm ",5,20,0,1);
INPAapiResultAnalog(real_zahl,"STAT_SOLLMOMENT_KUPPLUNG1_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " Nm ",5,48,0,1);
ftextout("Moment : Kupplung 2",6,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_ISTMOMENT_KUPPLUNG2_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " Nm ",6,20,0,1);
INPAapiResultAnalog(real_zahl,"STAT_SOLLMOMENT_KUPPLUNG2_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " Nm ",6,48,0,1);
ftextout("Druck : Kupplung 1",8,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_ISTDRUCK_KUPPLUNG1_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+ " bar ",8,20,0,1);
INPAapiResultAnalog(real_zahl,"STAT_SOLLDRUCK_KUPPLUNG1_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+ " bar ",8,48,0,1);
ftextout("Druck : Kupplung 2",9,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_ISTDRUCK_KUPPLUNG2_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " bar ",9,20,0,1);
INPAapiResultAnalog(real_zahl,"STAT_SOLLDRUCK_KUPPLUNG2_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " bar ",9,48,0,1);
ftextout("Strom : Magnetventil PV1",11,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_ISTSTROM_MAGNETVENTIL_PV1_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " A ",11,20,0,1);
INPAapiResultAnalog(real_zahl,"STAT_SOLLSTROM_MAGNETVENTIL_PV1_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " A ",11,48,0,1);
ftextout("Strom : Magnetventil PV2",12,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_ISTSTROM_MAGNETVENTIL_PV2_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " A ",12,20,0,1);
INPAapiResultAnalog(real_zahl,"STAT_SOLLSTROM_MAGNETVENTIL_PV2_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " A ",12,48,0,1);
ftextout("Strom : Magnetventil PV3",13,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_ISTSTROM_MAGNETVENTIL_PV3_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " A ",13,20,0,1);
INPAapiResultAnalog(real_zahl,"STAT_SOLLSTROM_MAGNETVENTIL_PV3_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " mA ",13,48,0,1);
ftextout("Strom : Magnetventil PV4",14,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_ISTSTROM_MAGNETVENTIL_PV4_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " A ",14,20,0,1);
INPAapiResultAnalog(real_zahl,"STAT_SOLLSTROM_MAGNETVENTIL_PV4_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " mA ",14,48,0,1);
ftextout("Strom : Magnetventil PV6",15,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_ISTSTROM_MAGNETVENTIL_PV6_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " A ",15,20,0,1);
INPAapiResultAnalog(real_zahl,"STAT_SOLLSTROM_MAGNETVENTIL_PV6_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " A ",15,48,0,1);
ftextout("Strom : Magnetventil PV7",16,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_ISTSTROM_MAGNETVENTIL_PV7_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " A ",16,20,0,1);
INPAapiResultAnalog(real_zahl,"STAT_SOLLSTROM_MAGNETVENTIL_PV7_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var + " A ",16,48,0,1);
ftextout("_________________________________________________________________________________________________________________",17,0,1,1);
ftextout("Hydraulikdruck",20,0,0,1);
ftextout(":",20,20,0,1);
INPAapiResultAnalog(real_zahl,"STAT_HYDRAULIKDRUCK_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout( text_var+ " bar ",20,22,0,1);
ftextout("Anforderung MIL Getriebe",22,0,0,1);
ftextout(":",22,20,0,1);
INPAapiResultText(text_var,"STAT_MIL_TEXT",1,"");
ftextout(text_var,22,22,0,1);
ftextout("OBD-Steuerfunktion Getriebe",24,0,0,1);
ftextout(":",24,20,0,1);
INPAapiResultText(text_var,"STAT_OBD_STEUERFUNKTION_TEXT",1,"");
ftextout(text_var+ " ",24,22,0,0);
}
}
// **************************
// *** StatusAnalog4screen ***
// **************************
SCREEN s_status_analog4()
{
ftextout("Status Analogwerte 4 lesen",1,0,1,0);
ftextout("",3,0,0,0);
INPAapiJob(sgbd,"STATUS_ROHWERTE_LESEN","","");
INPAapiCheckJobStatus("OKAY");
LINE("","")
{
ftextout("ECU-Temperatur",1,0,0,0);
ftextout(":",1,25,0,0);
INPAapiResultAnalog(real_zahl,"STAT_SG_TEMPERATUR_WERT",1);
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " <20>C ",1,26,0,0);
ftextout("Versorgungsspannungsensor",3,0,0,0);
ftextout(":",3,25,0,0);
INPAapiResultAnalog(real_zahl,"STAT_VERSORGUNGSSPANNUNGSSENSOR_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+ " " ,3,26,0,0);
ftextout("Sensorversorgungsspannung 5V VCC",5,0,0,0);
ftextout(":",5,25,0,0);
INPAapiResultAnalog(real_zahl,"STAT_SENSORSPANNUNGSVERSORGUNG_VCC_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+ " " ,5,26,0,0);
ftextout("Sensorversorgungsspannung SV1",7,0,0,0);
ftextout(":",7,25,0,0);
INPAapiResultAnalog(real_zahl,"STAT_SENSORSPANNUNGSVERSORGUNG_SV1_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+ " " ,7,26,0,0);
ftextout("Sensorversorgungsspannung SV2",9,0,0,0);
ftextout(":",9,25,0,0);
INPAapiResultAnalog(real_zahl,"STAT_SENSORSPANNUNGSVERSORGUNG_SV2_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+ " " ,9,26,0,0);
ftextout("Sensorversorgungsspannung UH7V4",11,0,0,0);
ftextout(":",11,25,0,0);
INPAapiResultAnalog(real_zahl,"STAT_SPANNUNGSVERSORGUNG_7SV4_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+ " " ,11,26,0,0);
ftextout("Antriebsdrehzahlsensor",13,0,0,0);
ftextout(":",13,25,0,0);
INPAapiResultAnalog(real_zahl,"STAT_ANTRIEBSDREHZAHLSENSOR_WERT",1);
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " " ,13,26,0,0);
ftextout("Getriebeeingangsdrehzahlsensor 1",15,0,0,0);
ftextout(":",15,25,0,0);
INPAapiResultAnalog(real_zahl,"STAT_EINGANGSDREHZAHLSENSOR_1_WERT",1);
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " " ,15,26,0,0);
ftextout("Getriebeeingangsdrehzahlsensor 2",17,0,0,0);
ftextout(":",17,25,0,0);
INPAapiResultAnalog(real_zahl,"STAT_EINGANGSDREHZAHLSENSOR_2_WERT",1);
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " " ,17,26,0,0);
ftextout("Abspritztemperatursensor",19,0,0,0);
ftextout(":",19,25,0,0);
INPAapiResultAnalog(real_zahl,"STAT_ABSPRITZTEMPERATURSENSOR_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " " ,19,26,0,0);
ftextout("Temperatursensor 1",1,45,0,0);
ftextout(":",1,64,0,0);
INPAapiResultAnalog(real_zahl,"STAT_TEMPERATURSENSOR_1_WERT",1);
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " <20>C ",1,65,0,0);
ftextout("Temperatursensor 2",3,45,0,0);
ftextout(":",3,64,0,0);
INPAapiResultAnalog(real_zahl,"STAT_TEMPERATURSENSOR_2_WERT",1);
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " <20>C ",3,65,0,0);
ftextout("Drucksensor Kupplung 1",5,45,0,0);
ftextout(":",5,64,0,0);
INPAapiResultAnalog(real_zahl,"STAT_DRUCKSENSOR_KUPPL_1_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " bar ",5,65,0,0);
ftextout("Drucksensor Kupplung 2",7,45,0,0);
ftextout(":",7,64,0,0);
INPAapiResultAnalog(real_zahl,"STAT_DRUCKSENSOR_KUPPL_2_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " bar ",7,65,0,0);
ftextout("Wegsensor Schaltstange R/2",9,45,0,0);
ftextout(":",9,64,0,0);
INPAapiResultAnalog(real_zahl,"STAT_WEGSENSOR_SST_R_2_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " V ",9,65,0,0);
ftextout("Wegsensor Schaltstange 1/3",11,45,0,0);
ftextout(":",11,64,0,0);
INPAapiResultAnalog(real_zahl,"STAT_WEGSENSOR_SST_1_3_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " V ",11,65,0,0);
ftextout("Wegsensor Schaltstange 6/4",13,45,0,0);
ftextout(":",13,64,0,0);
INPAapiResultAnalog(real_zahl,"STAT_WEGSENSOR_SST_6_4_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " V ",13,65,0,0);
ftextout("Wegsensor Schaltstange 5/7",15,45,0,0);
ftextout(":",15,64,0,0);
INPAapiResultAnalog(real_zahl,"STAT_WEGSENSOR_SST_5_7_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " V ",15,65,0,0);
ftextout("Parksperrensensor 1",17,45,0,0);
ftextout(":",17,64,0,0);
INPAapiResultText(text_var,"STAT_PARKSPERRENSENSOR_1_WERT",1,"");
ftextout(text_var,17,65,0,0);
ftextout("Parksperrensensor 2",19,45,0,0);
ftextout(":",19,64,0,0);
INPAapiResultText(text_var,"STAT_PARKSPERRENSENSOR_2_WERT",1,"");
ftextout(text_var+ " ",19,65,0,0);
ftextout("Sensorspannung Lenkradpaddel",21,0,0,0);
ftextout(":",21,25,0,0);
INPAapiResultAnalog(real_zahl,"STAT_SENSORSPANNUNG_PADDEL_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " V ",21,26,0,0);
}
}
// **************************
// *** StatusDigitalscreen***
// **************************
SCREEN s_status_digital()
{
ftextout("Status Digital lesen",1,0,1,0);
ftextout("",3,0,0,0);
INPAapiJob(sgbd,"STATUS_ISTWERTE_LESEN","","");
INPAapiCheckJobStatus("OKAY");
LINE("","")
{
ftextout("Klemme 15",1,0,0,0);
INPAapiResultDigital(digital,"STAT_KL15_EIN",1);
digitalout(digital,3,2,"EIN ","AUS ");
ftextout("Klemme 15 CAN",1,20,0,0);
INPAapiResultDigital(digital,"STAT_KL15_CAN_EIN",1);
digitalout(digital,3,22,"EIN ","AUS ");
ftextout("Fehler Endstufe",1,60,0,0);
INPAapiResultDigital(digital,"STAT_ENDSTUFE_FEHLER",1);
if(digital == 1) digital1=0;
if(digital == 0) digital1=1;
digitalout(digital1,3,62,"AKTIV","INAKTIV");
ftextout("Parksperre Sensor 1",10,0,0,0);
INPAapiResultDigital(digital,"STAT_PARKSPERRE_SENSOR1_EIN",1);
digitalout(digital,12,2,"EIN ","AUS ");
ftextout("Parksperre Sensor 2",10,20,0,0);
INPAapiResultDigital(digital,"STAT_PARKSPERRE_SENSOR2_EIN",1);
digitalout(digital,12,22,"EIN ","AUS ");
ftextout("Ansteuerung Parksperre",10,40,0,0);
INPAapiResultDigital(digital,"STAT_PARKSPERRE_AKTIV",1);
digitalout(digital,12,42,"AKTIVE ","INAKTIV");
ftextout("Bremslichtschalter",20,0,0,0);
INPAapiResultDigital(digital,"STAT_BREMSLICHTSCHALTER_EIN",1);
digitalout(digital,22,2,"EIN ","AUS ");
ftextout("Feststellbremse",20,20,0,0);
INPAapiResultDigital(digital,"STAT_FESTSTELLBREMSE_EIN",1);
digitalout(digital,22,22,"EIN ","AUS ");
ftextout("Sport-Taster",20,40,0,0);
INPAapiResultDigital(digital,"STAT_SPORT_TASTER_EIN",1);
digitalout(digital,22,42,"EIN ","AUS ");
}
}
// **************************
// *** StatusSonstigescreen ***
// **************************
SCREEN s_status_sonstige()
{
ftextout("Status Sonstige lesen",1,0,1,0);
ftextout("",3,0,0,0);
LINE("","")
{
ftextout("< F1 > Sonstige 1" , 4,5,0,1); ftextout("( G<>nge, Anzeige, Teilgetriebe, Fahrprogramm )",4,25,0,1);
ftextout("< F2 > Sonstige 2" , 6,5,0,1); ftextout("( Schaltstangen Ist- und Sollposition )",6,25,0,1);
ftextout("<Shift> + < F8 > Gesamt" ,18,45,0,1);
ftextout("<Shift> + < F10> Exit" ,22,45,0,1);
}
}
// **************************
// *** StatusSonstige1screen***
// **************************
SCREEN s_status_sonstige1()
{
ftextout("Status Sonstige lesen",1,0,1,0);
ftextout("",3,0,0,0);
INPAapiJob(sgbd,"STATUS_ISTWERTE_LESEN","","");
INPAapiCheckJobStatus("OKAY");
LINE("","")
{
ftextout("Eingelegter Gang",1,0,0,1);
ftextout(":",1,23,0,1);
INPAapiResultText(text_var,"STAT_ISTGANG_TEXT",1,"");
ftextout(text_var+ " ",1,25,0,1);
ftextout("Eingelegter Gang - Teilgetriebe 1",3,0,0,1);
ftextout(":",3,23,0,1);
INPAapiResultText(text_var,"STAT_ISTGANG_TEILGETRIEBE1_TEXT",1,"");
ftextout(text_var+ " ",3,25,0,1);
ftextout("Eingelegter Gang - Teilgetriebe 2",5,0,0,1);
ftextout(":",5,23,0,1);
INPAapiResultText(text_var,"STAT_ISTGANG_TEILGETRIEBE2_TEXT",1,"");
ftextout(text_var+ " ",5,25,0,1);
ftextout("Getriebeposition",7,0,0,1);
ftextout(":",7,23,0,1);
INPAapiResultText(text_var,"STAT_GETRIEBEPOSITION_TEXT",1,"");
ftextout(text_var+ " ",7,25,0,1);
ftextout("Status Kupplung 1",9,0,0,1);
ftextout(":",9,23,0,1);
INPAapiResultText(text_var,"STAT_KUPPLUNG1_TEXT",1,"");
ftextout(text_var+ " ",9,25,0,1);
ftextout("Status Kupplung 2",11,0,0,1);
ftextout(":",11,23,0,1);
INPAapiResultText(text_var,"STAT_KUPPLUNG2_TEXT",1,"");
ftextout(text_var+ " ",11,25,0,1);
ftextout("Taster Schaltwippe",13,0,0,1);
ftextout(":",13,23,0,1);
INPAapiResultText(text_var,"STAT_TASTER_LENKRAD_SCHALTWIPPE_TEXT",1,"");
ftextout(text_var+ " ",13,25,0,1);
ftextout("Fahrprogramm",15,0,0,1);
ftextout(":",15,23,0,1);
INPAapiResultText(text_var ,"STAT_PROGRAMMINFO_TEXT",1,"");
ftextout(text_var+ " ",15,25,0,1);
/*
ftextout("Schaltindex",17,0,0,1);
ftextout(":",17,23,0,1);
INPAapiResultText(text_var,"STAT_SCHALTINDEX_TEXT",1,"");
ftextout(text_var+ " ",17,25,0,1);
*/
ftextout("AGS",17,0,0,1);
ftextout(":",17,23,0,1);
INPAapiResultText(text_var,"STAT_SCHALTDIAGRAMM_AGS_TEXT",1,"");
ftextout(text_var + " ",17,25,0,1);
ftextout("Ganganzeige im Kombi",19,0,0,1);
ftextout(":",19,23,0,1);
INPAapiResultText(text_var,"STAT_GANGANZEIGE_TEXT",1,"");
ftextout(text_var+ " ",19,25,0,1);
ftextout("W<>hlhebelposition im Kombi",21,0,0,1);
ftextout(":",21,23,0,1);
INPAapiResultText(text_var,"STAT_WAEHLHEBELANZEIGE_TEXT",1,"");
ftextout(text_var+ " ",21,25,0,1);
}
}
// **************************
// *** StatusSonstige2screen***
// **************************
SCREEN s_status_sonstige2()
{
ftextout("Status Sonstige lesen",1,0,1,0);
ftextout("",3,0,0,0);
INPAapiJob(sgbd,"STATUS_ISTWERTE_LESEN","","");
INPAapiCheckJobStatus("OKAY");
LINE("","")
{
ftextout("Istposition",1,20,1,1);
ftextout("Sollposition",1,55,1,1);
ftextout("Schaltstange 6_4",4,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_ISTPOSITION_SCHALTSTANGE_6_4_WERT",1);
analogout(real_zahl,4,15,-12,12,-12,12,"");
ftextout("mm",5,46,0,0);
INPAapiResultText(text_var,"STAT_SOLLPOSITION_SCHALTSTANGE_6_4_TEXT",1,"");
ftextout(text_var+" ",4,58,0,0);
ftextout("Schaltstange 5_7",8,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_ISTPOSITION_SCHALTSTANGE_5_7_WERT",1);
analogout(real_zahl,8,15,-12,12,-12,12,"");
ftextout("mm",9,46,0,0);
INPAapiResultText(text_var,"STAT_SOLLPOSITION_SCHALTSTANGE_5_7_TEXT",1,"");
ftextout(text_var+" ",8,58,0,0);
ftextout("Schaltstange 2_R",12,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_ISTPOSITION_SCHALTSTANGE_2_R_WERT",1);
analogout(real_zahl,12,15,-12,12,-12,12,"");
ftextout("mm",13,46,0,0);
INPAapiResultText(text_var,"STAT_SOLLPOSITION_SCHALTSTANGE_2_R_TEXT",1,"");
ftextout(text_var+" ",12,58,0,0);
ftextout("Schaltstange 1_3",16,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_ISTPOSITION_SCHALTSTANGE_1_3_WERT",1);
analogout(real_zahl,16,15,-12,12,-12,12,"");
ftextout("mm",17,46,0,0);
INPAapiResultText(text_var,"STAT_SOLLPOSITION_SCHALTSTANGE_1_3_TEXT",1,"");
ftextout(text_var+" ",16,58,0,0);
ftextout("Status Schaltstange 6_4",20,24,0,1);
ftextout(":",20,40,0,1);
INPAapiResultText(text_var,"STAT_SCHALTSTANGE_6_4_TEXT",1,"");
ftextout(text_var+ " ",20,41,0,1);
ftextout("Status Schaltstange 5_7",21,24,0,1);
ftextout(":",21,40,0,1);
INPAapiResultText(text_var,"STAT_SCHALTSTANGE_5_7_TEXT",1,"");
ftextout(text_var+ " ",21,41,0,1);
ftextout("Status Schaltstange 2_R",22,24,0,1);
ftextout(":",22,40,0,1);
INPAapiResultText(text_var,"STAT_SCHALTSTANGE_2_R_TEXT",1,"");
ftextout(text_var+ " ",22,41,0,1);
ftextout("Status Schaltstange 1_3",23,24,0,1);
ftextout(":",23,40,0,1);
INPAapiResultText(text_var,"STAT_SCHALTSTANGE_1_3_TEXT",1,"");
ftextout(text_var+ " ",23,41,0,1);
}
}
// **************************
// *** StatusAdaptionenscreen ***
// **************************
SCREEN s_status_adaptionen()
{
ftextout("Status Adaptionswerte lesen",1,0,1,0);
ftextout("",3,0,0,0);
LINE("","")
{
ftextout("< F1 > Adaptionswerte 1" , 4,5,0,1); ftextout("( Kupplungen )" ,4,25,0,1);
ftextout("< F2 > Adaptionswerte 2" , 6,5,0,1); ftextout("( Einlernwerte der Schaltstangen )",6,25,0,1);
ftextout("<Shift> + < F8 > Gesamt" ,18,45,0,1);
ftextout("<Shift> + < F10> Exit" ,22,45,0,1);
}
}
// **************************
// *** StatusAdaption1screen***
// **************************
SCREEN s_status_adaptionen1()
{
ftextout("Status Adaptionswerte lesen",1,0,1,0);
ftextout("",3,0,0,0);
INPAapiJob(sgbd,"STATUS_ADAPTION_KUPPLUNGSSCHLEIFPUNKT_K1","","");
INPAapiCheckJobStatus("OKAY");
LINE("","")
{
ftextout("Adaptionswerte und Momentenkennlinie der Kupplungen",1,0,0,1);
ftextout("Kupplung 1",3,35,0,1);
ftextout("Kupplung 2",3,65,0,1);
ftextout("Schleifpunkt, der im EOL ermittelt wurde",5,0,0,0);
ftextout(":",5,34,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K1_SCHLEIFPUNKT_FAKTOR_1_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " bar",5,35,0,0);
ftextout("Schleifpunkt, der in der Werstatt ermittelt wurde",6,0,0,0);
ftextout(":",6,34,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K1_SCHLEIFPUNKT_FAKTOR_2_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " bar",6,35,0,0);
ftextout("Schleifpunkt nach 10 Adaptionsschritten",7,0,0,0);
ftextout(":",7,34,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K1_SCHLEIFPUNKT_FAKTOR_3_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " bar",7,35,0,0);
ftextout("Aktueller gefahrener Schleifpunkt",8,0,0,0);
ftextout(":",8,34,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K1_SCHLEIFPUNKT_FAKTOR_4_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " bar",8,35,0,0);
ftextout("Kleinster durch Adaption ermittelter Schleifpunkt",9,0,0,0);
ftextout(":",9,34,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K1_SCHLEIFPUNKT_FAKTOR_5_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " bar",9,35,0,0);
ftextout("Gr<47><72>ter durch Adaption ermittelter Schleifpunkt",10,0,0,0);
ftextout(":",10,34,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K1_SCHLEIFPUNKT_FAKTOR_6_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " bar",10,35,0,0);
INPAapiJob(sgbd,"STATUS_ADAPTION_KUPPLUNGSSCHLEIFPUNKT_K2","","");
INPAapiCheckJobStatus("OKAY");
INPAapiResultAnalog(real_zahl,"STAT_K2_SCHLEIFPUNKT_FAKTOR_1_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " bar",5,65,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K2_SCHLEIFPUNKT_FAKTOR_2_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " bar",6,65,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K2_SCHLEIFPUNKT_FAKTOR_3_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " bar",7,65,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K2_SCHLEIFPUNKT_FAKTOR_4_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " bar",8,65,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K2_SCHLEIFPUNKT_FAKTOR_5_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " bar",9,65,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K2_SCHLEIFPUNKT_FAKTOR_6_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var+ " bar",10,65,0,0);
INPAapiJob(sgbd,"STATUS_ADAPTION_MOMENTENKENNLINIE_K1","","");
ftextout("Adaptionswert Momentenkennlinie Faktor 1",13,0,0,0);
ftextout(":",13,34,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K1_MOMENTENKENNLINIE_FAKTOR_1_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var,13,35,0,0);
ftextout("Adaptionswert Momentenkennlinie Faktor 2",14,0,0,0);
ftextout(":",14,34,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K1_MOMENTENKENNLINIE_FAKTOR_2_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var,14,35,0,0);
ftextout("Adaptionswert Momentenkennlinie Faktor 3",15,0,0,0);
ftextout(":",15,34,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K1_MOMENTENKENNLINIE_FAKTOR_3_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var,15,35,0,0);
ftextout("Adaptionswert Momentenkennlinie Faktor 4",16,0,0,0);
ftextout(":",16,34,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K1_MOMENTENKENNLINIE_FAKTOR_4_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var,16,35,0,0);
ftextout("Adaptionswert Momentenkennlinie Faktor 5",17,0,0,0);
ftextout(":",17,34,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K1_MOMENTENKENNLINIE_FAKTOR_5_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var,17,35,0,0);
INPAapiJob(sgbd,"STATUS_ADAPTION_MOMENTENKENNLINIE_K2","","");
INPAapiResultAnalog(real_zahl,"STAT_K2_MOMENTENKENNLINIE_FAKTOR_1_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var,13,65,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K2_MOMENTENKENNLINIE_FAKTOR_2_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var,14,65,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K2_MOMENTENKENNLINIE_FAKTOR_3_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var,15,65,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K2_MOMENTENKENNLINIE_FAKTOR_4_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var,16,65,0,0);
INPAapiResultAnalog(real_zahl,"STAT_K2_MOMENTENKENNLINIE_FAKTOR_5_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var,17,65,0,0);
}
}
// **************************
// *** StatusAdaption1screen***
// **************************
SCREEN s_status_adaptionen2()
{
ftextout("Status Adaptionswerte lesen",1,0,1,0);
ftextout("",3,0,0,0);
INPAapiJob(sgbd,"STATUS_GETRIEBE_TEACHEN","","");
INPAapiCheckJobStatus("OKAY");
LINE("","")
{
ftextout("Faktor der Amplitude tin_amp_[0]",1,0,0,0);
INPAapiResultAnalog(real_zahl,"STAT_FAKTOR_AMPLITUDE_TIN_AMP_0_WERT",1);
analogout(real_zahl,2,0,0,8,0,0,"");
ftextout("Verschiebung der Kennlinie tin_p_[0] [mm]",1,50,0,0);
INPAapiResultAnalog(real_zahl,"STAT_VERSCHIEBUNG_KENNLINIE_TIN_P0_WERT",1);
analogout(real_zahl,2,48,-4,4,0,0,"");
//ftextout("mm",4,80,0,0);
ftextout("Faktor der Amplitude tin_amp_[1]",6,0,0,0);
INPAapiResultAnalog(real_zahl,"STAT_FAKTOR_AMPLITUDE_TIN_AMP_1_WERT",1);
analogout(real_zahl,7,0,0,8,0,0,"");
ftextout("Verschiebung der Kennlinie tin_p_[1] [mm]",6,50,0,0);
INPAapiResultAnalog(real_zahl,"STAT_VERSCHIEBUNG_KENNLINIE_TIN_P1_WERT",1);
analogout(real_zahl,7,48,-4,4,0,0,"");
//ftextout("mm",9,80,0,0);
ftextout("Faktor der Amplitude tin_amp_[2]",11,0,0,0);
INPAapiResultAnalog(real_zahl,"STAT_FAKTOR_AMPLITUDE_TIN_AMP_2_WERT",1);
analogout(real_zahl,12,0,0,8,0,0,"");
ftextout("Verschiebung der Kennlinie tin_p_[2] [mm]",11,50,0,0);
INPAapiResultAnalog(real_zahl,"STAT_VERSCHIEBUNG_KENNLINIE_TIN_P2_WERT",1);
analogout(real_zahl,12,48,-4,4,0,0,"");
//ftextout("mm",14,80,0,0);
ftextout("Faktor der Amplitude tin_amp_[3]",16,0,0,0);
INPAapiResultAnalog(real_zahl,"STAT_FAKTOR_AMPLITUDE_TIN_AMP_3_WERT",1);
analogout(real_zahl,17,0,0,8,0,0,"");
ftextout("Verschiebung der Kennlinie tin_p_[3] [mm]",16,50,0,0);
INPAapiResultAnalog(real_zahl,"STAT_VERSCHIEBUNG_KENNLINIE_TIN_P3_WERT",1);
analogout(real_zahl,17,48,-4,4,0,0,"");
ftextout("------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------",19,0,0,0);
ftextout("Nachadaption Gang 1 :",20,0,0,0);
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_GANG_1_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var+ " mm",20,15,0,0);
ftextout("Nachadaption Gang 2 :",21,0,0,0);
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_GANG_2_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var+ " mm",21,15,0,0);
ftextout("Nachadaption Gang 3 :",22,0,0,0);
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_GANG_3_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var+ " mm",22,15,0,0);
ftextout("Nachadaption Gang 4 :",23,0,0,0);
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_GANG_4_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var+ " mm",23,15,0,0);
ftextout("Nachadaption Gang 5 :",24,0,0,0);
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_GANG_5_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var+ " mm",24,15,0,0);
ftextout("Nachadaption Gang 6 :",25,0,0,0);
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_GANG_6_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var+ " mm",25,15,0,0);
ftextout("Nachadaption Gang 7 :",26,0,0,0);
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_GANG_7_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var+ " mm",26,15,0,0);
ftextout("Nachadaption Gang R :",27,0,0,0);
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_GANG_R_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var+ " mm",27,15,0,0);
ftextout("Nachadaption Neutral SST 1/3 :",20,48,0,0);
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_NEUTRAL_SST_1_3_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var+ " mm",20,68,0,0);
ftextout("Nachadaption Neutral SST 2/R :",21,48,0,0);
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_NEUTRAL_SST_2_R_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var+ " mm",21,68,0,0);
ftextout("Nachadaption Neutral SST 5/7 :",22,48,0,0);
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_NEUTRAL_SST_5_7_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var+ " mm",22,68,0,0);
ftextout("Nachadaption Neutral SST 6/4 :",23,48,0,0);
INPAapiResultAnalog(real_zahl,"STAT_NACHADAPTION_NEUTRAL_SST_6_4_WERT",1);
realtostring(real_zahl,"2.4",text_var);
ftextout(text_var+ " mm",23,68,0,0);
}
}
// **************************
// *** StatusKennlinienscreen***
// **************************
SCREEN s_status_kennlinie()
{
ftextout("Status Kennlinien lesen",1,0,1,0);
ftextout("",3,0,0,0);
INPAapiJob(sgbd,"STATUS_VENTILKENNLINIE_PV1","","");
INPAapiCheckJobStatus("OKAY");
LINE("","")
{
ftextout("PV 1 Ventilkennlinie ",4,0,0,0);
ftextout(":",4,15,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_1_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",4,21,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_2_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",4,28,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_3_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",4,36,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_4_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",4,44,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_5_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",4,52,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_6_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",4,60,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_7_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",4,68,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_8_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",4,76,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_9_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",6,21,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_10_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",6,28,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_11_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",6,36,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_12_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",6,44,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_13_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",6,52,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_14_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",6,60,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_15_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",6,68,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV1_VENTILKENNLINIE_FAKTOR_16_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",6,76,0,0);
ftextout("PV 2 Ventilkennlinie",10,0,0,0);
ftextout(":",10,15,0,0);
INPAapiJob(sgbd,"STATUS_VENTILKENNLINIE_PV2","","");
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_1_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",10,21,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_2_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",10,28,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_3_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",10,36,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_4_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",10,44,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_5_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",10,52,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_6_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",10,60,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_7_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",10,68,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_8_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",10,76,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_9_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",12,21,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_10_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",12,28,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_11_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",12,36,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_12_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",12,44,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_13_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",12,52,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_14_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",12,60,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_15_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",12,68,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV2_VENTILKENNLINIE_FAKTOR_16_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",12,76,0,0);
ftextout("PV 6 Ventilkennlinie",16,0,0,0);
ftextout(":",16,15,0,0);
INPAapiJob(sgbd,"STATUS_VENTILKENNLINIE_PV6","","");
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_1_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",16,21,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_2_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",16,28,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_3_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",16,36,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_4_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",16,44,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_5_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",16,52,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_6_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",16,60,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_7_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",16,68,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_8_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",16,76,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_9_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",18,21,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_10_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",18,28,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_11_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",18,36,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_12_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",18,44,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_13_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",18,52,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_14_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",18,60,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_15_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",18,68,0,0);
INPAapiResultAnalog(real_zahl,"STAT_PV6_VENTILKENNLINIE_FAKTOR_16_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+" bar",18,76,0,0);
ftextout("PV 7 Sperrstellung ",22,0,0,0);
ftextout(":",22,15,0,0);
INPAapiJob(sgbd,"STATUS_SPERRSTELLUNG_PV7","","");
INPAapiResultAnalog(real_zahl,"STAT_PV7_SPERRVENTIL_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var,22,21,0,0);
}
}
// **************************
// *** StatusStatistikscreen ***
// **************************
SCREEN s_status_statistik()
{
ftextout("Status Statistikdaten lesen",1,0,1,0);
ftextout("",3,0,0,0);
LINE("","")
{
ftextout("< F1 > Statistikwerte 1" , 4,5,0,1); ftextout("( Pr<50>dizierten Schaltungen und Fahrprogramm )",4,25,0,1);
ftextout("< F2 > Statistikwerte 2" , 6,5,0,1); ftextout("( Temperatur )",6,25,0,1);
ftextout("< F3 > Statistikwerte 3" , 8,5,0,1); ftextout("( E-Schaltung )",8,25,0,1);
ftextout("< F4 > Statistikwerte 4" ,10,5,0,1); ftextout("( Kupplung K1 + K2 )",10,25,0,1);
ftextout("< F5 > Statistikwerte 5" ,12,5,0,1); ftextout("( Allgemeine Adaptionswerte )",12,25,0,1);
ftextout("< F6 > Statistikdaten l<>schen" ,14,5,0,1);
ftextout("<Shift> + < F8 > Gesamt" ,18,45,0,1);
ftextout("<Shift> + < F10> Exit" ,22,45,0,1);
}
}
// **************************
// *** StatusStatistik1screen***
// **************************
SCREEN s_status_statistik1()
{
//ftextout("Status Statistikdaten lesen",1,0,1,0);
//ftextout("",3,0,0,0);
INPAapiJob(sgbd,"STATISTIKDATENSATZ_1_LESEN","","");
INPAapiCheckJobStatus("OKAY");
ftextout("Statistikdaten - Pr<50>dizierte Schaltungen und Fahrprogramme",1,0,1,1);
INPAapiResultText(text_var,"STAT_FAHRZEUGTYP_TEXT",1,"");
ftextout("Fahrzeugtyp :",3,0,0,0);
ftextout(text_var,3,10,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_LOESCHUNGEN_WERT",1);
ftextout("Anzahl der L<>schungen :",3,25,0,0);
realtostring(real_zahl,"6.0",text_var);
ftextout(text_var,3,42,0,0);
INPAapiResultAnalog(real_zahl,"KM_STAND_LETZTER_LOESCHUNG_WERT",1);
ftextout("Kilometerstand letzter L<>schung :",3,50,0,0);
realtostring(real_zahl,"6.0",text_var);
ftextout(text_var+ "km",3,72,0,0);
LINE("","")
{
ftextout("Anzahl der ausgef<65>hrten Schaltungen",3,0,0,4);
ftextout("Anzahl richtig pr<70>dizierten Schaltungen",3,25,0,4);
ftextout("Anzahl falsch pr<70>dizierten Schaltungen",3,51,0,4);
ftextout("Gang 1 : ",4,0,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_1_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,4,6,0,0);
ftextout("Gang 2 : ",5,0,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_2_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,5,6,0,0);
ftextout("Gang 3 : ",6,0,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_3_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,6,6,0,0);
ftextout("Gang 4 : ",7,0,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_4_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,7,6,0,0);
ftextout("Gang 5 : ",8,0,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_5_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,8,6,0,0);
ftextout("Gang 6 : ",9,0,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_6_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,9,6,0,0);
ftextout("Gang 7 : ",10,0,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_7_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,10,6,0,0);
ftextout("Gang N : ",11,0,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_N_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,11,6,0,0);
ftextout("Gang R : ",12,0,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_SCHALTUNG_GANG_R_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,12,6,0,0);
ftextout("Gang 1 : ",4,25,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_1_TRUE_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,4,31,0,0);
ftextout("Gang 2 : ",5,25,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_2_TRUE_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,5,31,0,0);
ftextout("Gang 3 : ",6,25,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_3_TRUE_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,6,31,0,0);
ftextout("Gang 4 : ",7,25,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_4_TRUE_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,7,31,0,0);
ftextout("Gang 5 : ",8,25,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_5_TRUE_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,8,31,0,0);
ftextout("Gang 6 : ",9,25,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_6_TRUE_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,9,31,0,0);
ftextout("Gang 7 : ",10,25,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_7_TRUE_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,10,31,0,0);
ftextout("Gang N : ",11,25,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_N_TRUE_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,11,31,0,0);
ftextout("Gang 1 : ",4,51,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_1_FALSE_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,4,57,0,0);
ftextout("Gang 2 : ",5,51,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_2_FALSE_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,5,57,0,0);
ftextout("Gang 3 : ",6,51,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_3_FALSE_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,6,57,0,0);
ftextout("Gang 4 : ",7,51,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_4_FALSE_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,7,57,0,0);
ftextout("Gang 5 : ",8,51,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_5_FALSE_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,8,57,0,0);
ftextout("Gang 6 : ",9,51,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_6_FALSE_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,9,57,0,0);
ftextout("Gang 7 : ",10,51,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_7_FALSE_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,10,57,0,0);
ftextout("Gang N : ",11,51,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_PRAED_SCHALTUNG_GANG_N_FALSE_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var,11,57,0,0);
INPAapiResultInt(int_zahl,"STAT_FAHRZEUGTYP_WERT",1);
if ( int_zahl == 0 || int_zahl > 1)
{
ftextout("Aufenthaltsdauer in den einzelnen Fahrmodi",15,0,0,4);
ftextout("Automatik Normal",16,0,0,0);
ftextout(":",16,25,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_3_WERT",1);
real_zahl= real_zahl /3600;
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " Stunden",16,28,0,0);
ftextout("Automatik (Sporttaster bet<65>tigt)",17,0,0,0);
ftextout(":",17,25,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_4_WERT",1);
real_zahl= real_zahl /3600;
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " Stunden",17,28,0,0);
ftextout("Sportgasse Normal",18,0,0,0);
ftextout(":",18,25,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_5_WERT",1);
real_zahl= real_zahl /3600;
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " Stunden",18,28,0,0);
ftextout("Sportgasse (Sporttaster bet<65>tigt) ",19,0,0,0);
ftextout(":",19,25,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_6_WERT",1);
real_zahl= real_zahl /3600;
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " Stunden",19,28,0,0);
ftextout("Manuell Normal",20,0,0,0);
ftextout(":",20,25,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_1_WERT",1);
real_zahl= real_zahl /3600;
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " Stunden",20,28,0,0);
ftextout("Manuell (Sporttaster bet<65>tigt)",21,0,0,0);
ftextout(":",21,25,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_2_WERT",1);
real_zahl= real_zahl /3600;
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " Stunden",21,28,0,0);
ftextout("Kurzzeitmanuell Normal",22,0,0,0);
ftextout(":",22,25,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_7_WERT",1);
real_zahl= real_zahl /3600;
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " Stunden",22,28,0,0);
ftextout("Kurzzeitmanuell (Sporttaster bet<65>tigt)",23,0,0,0);
ftextout(":",23,25,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_8_WERT",1);
real_zahl= real_zahl /3600;
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " Stunden",23,28,0,0);
ftextout("< Shift > + < F9 > Zur<75>ck",25,65,0,1);
ftextout("< Shift > + < F10 > Ende ",26,65,0,1);
}
if( int_zahl == 1 )
{
ftextout("Aufenthaltsdauer in den einzelnen Fahrmodi",15,0,0,4);
ftextout("Manuell 1",16,0,0,0);
ftextout(":",16,15,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_1_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"8.2",text_var);
ftextout(text_var+ " Stunden",16,19,0,0);
ftextout("Manuell 2",17,0,0,0);
ftextout(":",17,15,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_2_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"8.2",text_var);
ftextout(text_var+ " Stunden",17,19,0,0);
ftextout("Manuell 3",18,0,0,0);
ftextout(":",18,15,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_3_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"8.2",text_var);
ftextout(text_var+ " Stunden",18,19,0,0);
ftextout("Manuell 4",19,0,0,0);
ftextout(":",19,15,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_4_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"8.2",text_var);
ftextout(text_var+ " Stunden",19,19,0,0);
ftextout("Manuell 5",20,0,0,0);
ftextout(":",20,15,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_5_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"8.2",text_var);
ftextout(text_var+ " Stunden",20,19,0,0);
ftextout("Manuell 6",21,0,0,0);
ftextout(":",21,15,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_6_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"8.2",text_var);
ftextout(text_var+ " Stunden",21,19,0,0);
ftextout("Automatik 1",16,40,0,0);
ftextout(":",9,55,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_7_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"8.2",text_var);
ftextout(text_var+ " Stunden",16,59,0,0);
ftextout("Automatik 2",17,40,0,0);
ftextout(":",17,55,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_8_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"8.2",text_var);
ftextout(text_var+ " Stunden",17,59,0,0);
ftextout("Automatik 3",18,40,0,0);
ftextout(":",18,55,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_9_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"8.2",text_var);
ftextout(text_var+ " Stunden",18,59,0,0);
ftextout("Automatik 4",19,40,0,0);
ftextout(":",19,55,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_10_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"8.2",text_var);
ftextout(text_var+ " Stunden",19,59,0,0);
ftextout("Automatik 5",20,40,0,0);
ftextout(":",20,55,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_FAHRMODUS_11_WERT",1);
real_zahl= real_zahl/3600;
realtostring(real_zahl,"8.2",text_var);
ftextout(text_var+ " Stunden",20,59,0,0);
}
}
}
// **************************
// *** StatusStatistik2screen***
// **************************
SCREEN s_status_statistik2()
{
//ftextout("Status Statistikdaten lesen",1,0,1,0);
//ftextout("",3,0,0,0);
INPAapiJob(sgbd,"STATISTIKDATENSATZ_1_LESEN","","");
INPAapiCheckJobStatus("OKAY");
ftextout("Statistikdaten - Temperatur",1,0,1,1);
INPAapiResultText(text_var,"STAT_FAHRZEUGTYP_TEXT",1,"");
ftextout("Fahrzeugtyp :",3,0,0,0);
ftextout(text_var,3,10,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_LOESCHUNGEN_WERT",1);
ftextout("Anzahl der L<>schungen :",3,25,0,0);
realtostring(real_zahl,"6.0",text_var);
ftextout(text_var,3,42,0,0);
INPAapiResultAnalog(real_zahl,"KM_STAND_LETZTER_LOESCHUNG_WERT",1);
ftextout("Kilometerstand letzter L<>schung :",3,50,0,0);
realtostring(real_zahl,"6.0",text_var);
ftextout(text_var+ "km",3,72,0,0);
LINE("","")
{
ftextout("Aufenthaltsdauer im jeweiligen <20>lsumpf-Temperaturbereich",1,0,0,4);
ftextout("Temperaturbereich <-30 <20>C : ",3,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_KLEINER_MINUS_30_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",3,23,0,0);
ftextout("Temperaturbereich -30 bis -20 <20>C : ",4,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_MINUS_30_BIS_MINUS_20_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",4,23,0,0);
ftextout("Temperaturbereich -20 bis -10 <20>C : ",5,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_MINUS_20_BIS_MINUS_10_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",5,23,0,0);
ftextout("Temperaturbereich -10 bis 0 <20>C : ",6,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_MINUS_10_BIS_0_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",6,23,0,0);
ftextout("Temperaturbereich 0 bis 10 <20>C : ",7,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_0_BIS_10_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",7,23,0,0);
ftextout("Temperaturbereich 10 bis 20 <20>C : ",8,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_10_BIS_20_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",8,23,0,0);
ftextout("Temperaturbereich 20 bis 30 <20>C : ",9,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_20_BIS_30_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",9,23,0,0);
ftextout("Temperaturbereich 30 bis 40 <20>C : ",10,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_30_BIS_40_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",10,23,0,0);
ftextout("Temperaturbereich 40 bis 50 <20>C : ",11,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_40_BIS_50_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",11,23,0,0);
ftextout("Temperaturbereich 50 bis 60 <20>C : ",12,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_50_BIS_60_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",12,23,0,0);
ftextout("Temperaturbereich 60 bis 70 <20>C : ",13,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_60_BIS_70_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",13,23,0,0);
ftextout("Temperaturbereich 70 bis 80 <20>C : ",14,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_70_BIS_80_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",14,23,0,0);
ftextout("Temperaturbereich 80 bis 90 <20>C : ",15,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_80_BIS_90_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",15,23,0,0);
ftextout("Temperaturbereich 90 bis 100 <20>C : ",16,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_90_BIS_100_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",16,23,0,0);
ftextout("Temperaturbereich 100 bis 110 <20>C : ",17,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_100_BIS_110_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",17,23,0,0);
ftextout("Temperaturbereich 110 bis 120 <20>C : ",18,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_110_BIS_120_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",18,23,0,0);
ftextout("Temperaturbereich 120 bis 130 <20>C : ",19,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_120_BIS_130_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",19,23,0,0);
ftextout("Temperaturbereich 130 bis 140 <20>C : ",20,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_130_BIS_140_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",20,23,0,0);
ftextout("Temperaturbereich 140 bis 150 <20>C : ",21,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_140_BIS_150_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",21,23,0,0);
ftextout("Temperaturbereich 150 bis 160 <20>C : ",22,0,0,0);
INPAapiResultAnalog(real_zahl,"AUFENTHALTSDAUER_OELSUMPF_150_BIS_160_GRAD_WERT",1);
realtostring(real_zahl,"10.0",text_var);
ftextout(text_var+ " min",22,23,0,0);
ftextout("Statistiken zum Abspritzsensor",3,45,0,4);
ftextout("Max. Temperatur Abspritzsensor",5,45,0,0);
ftextout(":",5,65,0,0);
INPAapiJob(sgbd,"STATISTIKDATENSATZ_1_LESEN","","");
INPAapiResultInt(int_zahl,"STAT_ABSPRITZSSENSORTEMPERATUR_MAX_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var+ " <20>C",5,70,0,0);
ftextout("Aufenthaltsdauer max. Temp.",6,45,0,0);
ftextout(":",6,65,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_MAX_TEMPERATUR_ABSPRITZSENSOR",1);
real_zahl=real_zahl/187.5;
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " min",6,70,0,0);
ftextout("Statistiken zu den Kupplungen",9,45,0,4);
ftextout("Max. Temperatur Kupplung 1",11,45,0,0);
ftextout(":",11,65,0,0);
INPAapiResultInt(int_zahl,"STAT_KUPPLUNGSTEMPERATUR_K1_MAX_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var+ " <20>C",11,70,0,0);
ftextout("Aufenthaltsdauer max. Temp.",12,45,0,0);
ftextout(":",12,65,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_K1_MAX_TEMPERATUR",1);
real_zahl=real_zahl/187.5;
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " min",12,70,0,0);
ftextout("Max. Temperatur Kupplung 2",14,45,0,0);
ftextout(":",14,65,0,0);
INPAapiResultInt(int_zahl,"STAT_KUPPLUNGSTEMPERATUR_K2_MAX_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var+ " <20>C",14,70,0,0);
ftextout("Aufenthaltsdauer max. Temp.",15,45,0,0);
ftextout(":",15,65,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_K2_MAX_TEMPERATUR",1);
real_zahl=real_zahl/187.5;
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " min",15,70,0,0);
}
}
// **************************
// *** StatusStatistik3screen***
// **************************
SCREEN s_status_statistik3()
{
//ftextout("Status Statistikdaten lesen",1,0,1,0);
//ftextout("",3,0,0,0);
INPAapiJob(sgbd,"STATISTIKDATENSATZ_1_LESEN","","");
INPAapiCheckJobStatus("OKAY");
ftextout("Statistikdaten - E-Schaltung",1,0,1,1);
INPAapiResultText(text_var,"STAT_FAHRZEUGTYP_TEXT",1,"");
ftextout("Fahrzeugtyp :",3,0,0,0);
ftextout(text_var,3,10,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_LOESCHUNGEN_WERT",1);
ftextout("Anzahl der L<>schungen :",3,25,0,0);
realtostring(real_zahl,"6.0",text_var);
ftextout(text_var,3,42,0,0);
INPAapiResultAnalog(real_zahl,"KM_STAND_LETZTER_LOESCHUNG_WERT",1);
ftextout("Kilometerstand letzter L<>schung :",3,50,0,0);
realtostring(real_zahl,"6.0",text_var);
ftextout(text_var+ "km",3,72,0,0);
LINE("","")
{
ftextout("Fahrstufe anfordern ohne Bremse",3,0,0,0);
ftextout(":",3,23,0,0);
INPAapiJob(sgbd,"STATISTIKDATENSATZ_1_LESEN","","");
INPAapiResultInt(int_zahl,"ANZ_FAHRSTUFE_ANFORDERN_OHNE_BREMSE",1);
inttostring(int_zahl,text_var);
ftextout(text_var,3,25,0,0);
ftextout("R-Gang anfordern bei v > 10km/h",5,0,0,0);
ftextout(":",5,23,0,0);
INPAapiResultInt(int_zahl,"ANZ_R_GANG_ANFORDERN_UEBER_V_SCHWELLE",1);
inttostring(int_zahl,text_var);
ftextout(text_var,5,25,0,0);
ftextout("Auto-P bei Fahrzeugverlassen",7,0,0,0);
ftextout(":",7,23,0,0);
INPAapiResultInt(int_zahl,"ANZ_AUTO_P_FAHRZEUGVERLASSEN",1);
inttostring(int_zahl,text_var);
ftextout(text_var,7,25,0,0);
ftextout("P anfordern bei v > 3,5km/h",9,0,0,0);
ftextout(":",9,23,0,0);
INPAapiResultInt(int_zahl,"ANZ_P_ANFORDERN_V_UEBER_SCHWELLE",1);
inttostring(int_zahl,text_var);
ftextout(text_var,9,25,0,0);
INPAapiJob(sgbd,"STATISTIKDATENSATZ_1_LESEN","","");
ftextout("Anzahl der Rennstarts",11,0,0,0);
ftextout(":",11,23,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_RENNSTARTS_WERT",1);
realtostring(real_zahl,"2.0",text_var);
ftextout(text_var,11,25,0,0);
}
}
// **************************
// *** StatusStatistik4screen***
// **************************
SCREEN s_status_statistik4()
{
//ftextout("Status Statistikdaten lesen",1,0,1,0);
//ftextout("",3,0,0,0);
INPAapiJob(sgbd,"STATISTIKDATENSATZ_1_LESEN","","");
INPAapiCheckJobStatus("OKAY");
ftextout("Statistikdaten - Kupplung K1 + K2",1,0,1,1);
INPAapiResultText(text_var,"STAT_FAHRZEUGTYP_TEXT",1,"");
ftextout("Fahrzeugtyp :",3,0,0,0);
ftextout(text_var,3,10,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_LOESCHUNGEN_WERT",1);
ftextout("Anzahl der L<>schungen :",3,25,0,0);
realtostring(real_zahl,"6.0",text_var);
ftextout(text_var,3,42,0,0);
INPAapiResultAnalog(real_zahl,"KM_STAND_LETZTER_LOESCHUNG_WERT",1);
ftextout("Kilometerstand letzter L<>schung :",3,50,0,0);
realtostring(real_zahl,"6.0",text_var);
ftextout(text_var+ "km",3,72,0,0);
LINE("","")
{
ftextout("Kupplungsstatistik",1,0,0,4);
ftextout("Kupplung 1",1,45,0,4);
ftextout("Kupplung 2",1,65,0,4);
ftextout("Max. Kupplungstemperatur",3,0,0,0);
ftextout(":",3,42,0,0);
INPAapiJob(sgbd,"STATISTIKDATENSATZ_1_LESEN","","");
INPAapiResultInt(int_zahl,"STAT_KUPPLUNGSTEMPERATUR_K1_MAX_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var+ " <20>C",3,45,0,0);
INPAapiResultInt(int_zahl,"STAT_KUPPLUNGSTEMPERATUR_K2_MAX_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var+ " <20>C",3,65,0,0);
ftextout("Aufenthaltsdauer max. Temperatur",4,0,0,0);
ftextout(":",4,42,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_K1_MAX_TEMPERATUR",1);
real_zahl=real_zahl/187.5;
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " min",4,45,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_K2_MAX_TEMPERATUR",1);
real_zahl=real_zahl/187.5;
realtostring(real_zahl,"5.2",text_var);
ftextout(text_var+ " min",4,65,0,0);
INPAapiJob(sgbd,"STATISTIKDATENSATZ_2_LESEN","","");
ftextout("Anzahl durchgef<65>hrter Kupplungsadaptionen (Erfolgsz<73>hler)",5,0,0,0);
ftextout(":",5,42,0,0);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K1_ADAPTIONEN",1);
inttostring(int_zahl,text_var);
ftextout(text_var,5,45,0,0);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K2_ADAPTIONEN",1);
inttostring(int_zahl,text_var);
ftextout(text_var,5,65,0,0);
ftextout("Kilometerstand der letzten erfolgreichen Adaption",6,0,0,0);
ftextout(":",6,42,0,0);
INPAapiResultInt(int_zahl,"KILOMETERSTAND_LETZTER_K1_ADAPTION_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var+ " km",6,45,0,0);
INPAapiResultInt(int_zahl,"KILOMETERSTAND_LETZTER_K2_ADAPTION_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var+ " km",6,65,0,0);
ftextout("Min. adaptierter Kupplungsschleifpunkt",7,0,0,0);
ftextout(":",7,42,0,0);
INPAapiResultAnalog(real_zahl,"KISSPOINT_K1_MIN_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+ " bar",7,45,0,0);
INPAapiResultAnalog(real_zahl,"KISSPOINT_K2_MIN_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+ " bar",7,65,0,0);
ftextout("Kilometerstand der letzen Min. Adaption",8,0,0,0);
ftextout(":",8,42,0,0);
INPAapiResultInt(int_zahl,"KILOMETERSTAND_K1_MIN_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var+ " km",8,45,0,0);
INPAapiResultInt(int_zahl,"KILOMETERSTAND_K2_MIN_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var+ " km",8,65,0,0);
ftextout("Max. adaptierter Kupplungsschleifpunkt",9,0,0,0);
ftextout(":",9,42,0,0);
INPAapiResultAnalog(real_zahl,"KISSPOINT_K1_MAX_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+ " bar",9,45,0,0);
INPAapiResultAnalog(real_zahl,"KISSPOINT_K2_MAX_WERT",1);
realtostring(real_zahl,"2.2",text_var);
ftextout(text_var+ " bar",9,65,0,0);
ftextout("Kilometerstand der letzen Max. Adaption",10,0,0,0);
ftextout(":",10,42,0,0);
INPAapiResultInt(int_zahl,"KILOMETERSTAND_K1_MAX_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var+ " km",10,45,0,0);
INPAapiResultInt(int_zahl,"KILOMETERSTAND_K2_MAX_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var+ " km",10,65,0,0);
INPAapiJob(sgbd,"STATISTIKDATENSATZ_2_LESEN","","");
ftextout("Kupplungsadaptionskennlinie Max 50Nm",12,0,0,0);
ftextout(":",12,42,0,0);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K1_MAX50_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var,12,45,0,0);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K2_MAX50_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var,12,65,0,0);
ftextout("Kupplungsadaptionskennlinie Min 50Nm",13,0,0,0);
ftextout(":",13,42,0,0);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K1_MIN50_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var,13,45,0,0);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K2_MIN50_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var,13,65,0,0);
ftextout("Kupplungsadaptionskennlinie Max 300Nm",14,0,0,0);
ftextout(":",14,42,0,0);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K1_MAX300_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var,14,45,0,0);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K2_MAX300_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var,14,65,0,0);
ftextout("Kupplungsadaptionskennlinie Min 300Nm",15,0,0,0);
ftextout(":",15,42,0,0);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K1_MIN300_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var,15,45,0,0);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K2_MIN300_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var,15,65,0,0);
ftextout("Kupplungsadaptionskennlinie akt.Wert 300Nm bei Max 50Nm",17,0,0,0);
ftextout(":",17,42,0,0);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K1_300_BEI_MAX50_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var,17,45,0,0);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K2_300_BEI_MAX50_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var,17,65,0,0);
ftextout("Kupplungsadaptionskennlinie akt.Wert 300Nm bei Min 50Nm",18,0,0,0);
ftextout(":",18,42,0,0);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K1_300_BEI_MIN50_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var,18,45,0,0);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K2_300_BEI_MIN50_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var,18,65,0,0);
ftextout("Kupplungsadaptionskennlinie akt.Wert 50Nm bei Max 300Nm",19,0,0,0);
ftextout(":",19,42,0,0);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K1_50_BEI_MAX300_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var,19,45,0,0);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K2_50_BEI_MAX300_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var,19,65,0,0);
ftextout("Kupplungsadaptionskennlinie akt.Wert 50Nm bei Min 300Nm",20,0,0,0);
ftextout(":",20,42,0,0);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K1_50_BEI_MIN300_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var,20,45,0,0);
INPAapiResultAnalog(real_zahl,"KUPPLUNGSADAPTIONSKENNLINIE_K2_50_BEI_MIN300_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout(text_var,20,65,0,0);
ftextout("Adaptionsz<73>hler 50Nm",22,0,0,0);
ftextout(":",22,42,0,0);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K1_ADAPTIONEN_50NM",1);
inttostring(int_zahl,text_var);
ftextout(text_var,22,45,0,0);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K2_ADAPTIONEN_50NM",1);
inttostring(int_zahl,text_var);
ftextout(text_var,22,65,0,0);
ftextout("Adaptionsz<73>hler 70Nm",23,0,0,0);
ftextout(":",23,42,0,0);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K1_ADAPTIONEN_75NM",1);
inttostring(int_zahl,text_var);
ftextout(text_var,23,45,0,0);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K2_ADAPTIONEN_75NM",1);
inttostring(int_zahl,text_var);
ftextout(text_var,23,65,0,0);
ftextout("Adaptionsz<73>hler 125Nm",24,0,0,0);
ftextout(":",24,42,0,0);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K1_ADAPTIONEN_125NM",1);
inttostring(int_zahl,text_var);
ftextout(text_var,24,45,0,0);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K2_ADAPTIONEN_125NM",1);
inttostring(int_zahl,text_var);
ftextout(text_var,24,65,0,0);
ftextout("Adaptionsz<73>hler 200Nm",25,0,0,0);
ftextout(":",25,42,0,0);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K1_ADAPTIONEN_200NM",1);
inttostring(int_zahl,text_var);
ftextout(text_var,25,45,0,0);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K2_ADAPTIONEN_200NM",1);
inttostring(int_zahl,text_var);
ftextout(text_var,25,65,0,0);
ftextout("Adaptionsz<73>hler 300Nm",26,0,0,0);
ftextout(":",26,42,0,0);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K1_ADAPTIONEN_300NM",1);
inttostring(int_zahl,text_var);
ftextout(text_var,26,45,0,0);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_K2_ADAPTIONEN_300NM",1);
inttostring(int_zahl,text_var);
ftextout(text_var,26,65,0,0);
}
}
// **************************
// *** StatusStatistik5screen***
// **************************
SCREEN s_status_statistik5()
{
//ftextout("Status Statistikdaten lesen",1,0,1,0);
//ftextout("",3,0,0,0);
INPAapiJob(sgbd,"STATISTIKDATENSATZ_1_LESEN","","");
INPAapiCheckJobStatus("OKAY");
ftextout("Statistikdaten - Adaptionen",1,0,1,1);
INPAapiResultText(text_var,"STAT_FAHRZEUGTYP_TEXT",1,"");
ftextout("Fahrzeugtyp :",3,0,0,0);
ftextout(text_var,3,10,0,0);
INPAapiResultAnalog(real_zahl,"ANZ_LOESCHUNGEN_WERT",1);
ftextout("Anzahl der L<>schungen :",3,25,0,0);
realtostring(real_zahl,"6.0",text_var);
ftextout(text_var,3,42,0,0);
INPAapiResultAnalog(real_zahl,"KM_STAND_LETZTER_LOESCHUNG_WERT",1);
ftextout("Kilometerstand letzter L<>schung :",3,50,0,0);
realtostring(real_zahl,"6.0",text_var);
ftextout(text_var+ "km",3,72,0,0);
LINE("","")
{
INPAapiJob(sgbd,"STATISTIKDATENSATZ_2_LESEN","","");
ftextout("Anzahl der durchgef<65>hrten Adaptionen f<>r PV6",1,0,0,4);
ftextout("Z<>hler f<>r St<53>tzstelle 0",2,0,0,0);
ftextout(":",2,20,0,0);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_0_PV6_ADAPTIONEN",1);
inttostring(int_zahl,text_var);
ftextout(text_var,2,22,0,0);
ftextout("Z<>hler f<>r St<53>tzstelle 1",3,0,0,0);
ftextout(":",3,20,0,0);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_1_PV6_ADAPTIONEN",1);
inttostring(int_zahl,text_var);
ftextout(text_var,3,22,0,0);
ftextout("Z<>hler f<>r St<53>tzstelle 2",4,0,0,0);
ftextout(":",4,20,0,0);
INPAapiResultInt(int_zahl,"ANZ_ZAEHLER_2_PV6_ADAPTIONEN",1);
inttostring(int_zahl,text_var);
ftextout(text_var,4,22,0,0);
INPAapiJob(sgbd,"STATUS_ADAPTIONSWERT_GETRIEBECODE","","");
ftextout("Adaption Getriebecode",6,0,0,4);
ftextout("Wert 1 :",7,0,0,0);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_1_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var,7,7,0,0);
ftextout("Wert 2 :",8,0,0,0);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_2_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var,8,7,0,0);
ftextout("Wert 3 :",9,0,0,0);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_3_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var,9,7,0,0);
ftextout("Wert 4 :",10,0,0,0);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_4_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var,10,7,0,0);
ftextout("Wert 5 :",11,0,0,0);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_5_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var,11,7,0,0);
ftextout("Wert 6 :",12,0,0,0);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_6_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var,12,7,0,0);
ftextout("Wert 7 :",13,0,0,0);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_7_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var,13,7,0,0);
ftextout("Wert 8 :",14,0,0,0);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_8_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var,14,7,0,0);
ftextout("Wert 9 :",15,0,0,0);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_9_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var,15,7,0,0);
ftextout("Wert 10 :",16,0,0,0);
INPAapiResultInt(int_zahl,"STAT_ADAPTION_GETRIEBECODE_10_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var,16,7,0,0);
ftextout("Adaptionswert Radsatzvariante",1,40,0,0);
ftextout(":",1,70,0,0);
INPAapiJob(sgbd,"STATUS_ADAPTIONSWERT_RADSATZVARIANTE","","");
INPAapiResultInt(int_zahl,"STAT_ADAPTION_RADSATZVARIANTE_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var,1,72,0,0);
ftextout("Adaptionswert Hydraulikpumpe",3,40,0,0);
ftextout(":",3,70,0,0);
INPAapiJob(sgbd,"STATUS_ADAPTIONSWERT_HYDRAULIKPUMPE","","");
INPAapiResultInt(int_zahl,"STAT_ADAPTION_HYDRAULIKPUMPE_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var,3,72,0,0);
ftextout("Adaptionswert Temperatursensor Abspritz<74>l",5,40,0,0);
ftextout(":",5,70,0,0);
INPAapiJob(sgbd,"STATUS_ADAPTIONSWERT_TEMPERATURSENSOR","","");
INPAapiResultInt(int_zahl,"STAT_ADAPTION_TEMPERATURSENSOR_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var,5,72,0,0);
ftextout("Adaptionswert Abspritz<74>l Pull-Up Wiederstand",7,40,0,0);
ftextout(":",7,70,0,0);
INPAapiJob(sgbd,"STATUS_ADAPTIONSWERT_TEMPERATURSENSOR_WIDERSTAND","","");
INPAapiResultInt(int_zahl,"STAT_ADAPTION_TEMPERATURSENSOR_WIDERSTAND_WERT",1);
inttostring(int_zahl,text_var);
ftextout(text_var+ " Ohm ",7,72,0,0);
}
}
// **************************
// *** Steuernscreen ***
// **************************
SCREEN s_steuern()
{
ftextout("Ansteuern",1,0,1,0);
ftextout("",3,0,0,0);
LINE("","")
{
//ftextout("< F1 > Beliebigen Gang einlegen",1,0,0,1);
//ftextout("< F2 > Sp<53>lfunktion starten",3,0,0,1);
//ftextout("< F3 > Solldruckvorgabe Kupplung 1",5,0,0,1);
//ftextout("< F4 > Solldruckvorgabe Kupplung 2",7,0,0,1);
//ftextout("< F5 > Vorgabe des Systemdrucks",9,0,0,1);
//ftextout("< F6 > Kupplungsk<73>hlung aktivieren",11,0,0,1);
ftextout("< F1 > Kupplungsschleifpunkt 1 + 2 einlernen",6,0,0,1);
ftextout("< F2 > Getriebe einlernen ( Schaltstangen )",8,0,0,1);
//ftextout("< F9 > Adaptionswerte in NVRAM speichern",17,0,0,1);
//ftextout("< F10 > Ventilkennlinien einlernen PV1/2",19,0,0,1);
//ftextout("< Shift > + < F8 > Adaptionswerte schreiben ( passwortgesch<63>tzt )",21,0,0,1);
ftextout("Warnung :",12,0,0,1);
ftextout("Da die Diagnoseschnittstelle ein Event gesteuertes Modul in der Getriebesoftware darstellt,",13,0,0,0);
ftextout("k<>nnen Test- und Einlernprogramme nur durch den Bediener, in diesem Fall durch den Diagnosetester, ",14,0,0,0);
ftextout("ein- und ausgeschaltet bzw. abgefragt werden. Anderenfalls sind Zust<73>nde m<>glich, die nur durch",15,0,0,0);
ftextout("das Abschalten der Kl.15 und das anschlie<69>ende Abwarten des Steuerger<65>tenachlaufs verlassen werden k<>nnen.",16,0,0,0);
ftextout("< F9 > Bildschirmdruck" ,20,5,0,1);
ftextout("< F10> Zur<75>ck" ,22,5,0,1);
ftextout("<Shift> + < F10> Exit" ,22,45,0,1);
}
}
// **************************
// *** Steuernscreen Kupplung ***
// **************************
SCREEN s_steuern_kupplung()
{
ftextout("Ansteuern",1,0,1,0);
ftextout("",3,0,0,0);
LINE("","")
{
ftextout("Kupplungsschleifpunkt 1 + 2 einlernen",1,0,1,1);
ftextout("< F1 > Schleifpunkt in der Werkstatt einlernen",8,0,0,1);
ftextout("Testbedingung: ",12,0,0,4);
ftextout("Fahrzeug steht, Bremse getreten, Motor l<>uft, Fahrpedal nicht bet<65>tigt,",13,0,0,1);
ftextout("Getriebeeingangsdrehzahl (abh<62>ngig vom einlernenden Getriebezweig) muss zu Beginn der Testroutine Null sein,",14,0,0,1);
ftextout("Optimale Getriebetemperatur 80-90<39>C",15,0,0,1);
INPAapiJob(sgbd,"STATUS_ISTWERTE_LESEN","","");
INPAapiResultAnalog(real_zahl,"STAT_GESCHWINDIGKEIT_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout("Fzg. Geschwindigkeit : "+text_var+" km ",18,0,0,1);
INPAapiResultDigital(digital,"STAT_BREMSLICHTSCHALTER_EIN",1);
if ( digital == 0 )
{
text_var= "nicht aktiv";
}
if (digital == 1 )
{
text_var= "aktiv";
}
ftextout("Bremse : "+text_var+" ",18,45,0,1);
INPAapiResultAnalog(real_zahl,"STAT_MOTORDREHZAHL_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout("Motordrehzahl : "+text_var+" 1/min ",19,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_FAHRPEDAL_WERT",1);
realtostring(real_zahl,"3.0",text_var);
ftextout("Fahrpedal : "+text_var+" % ",19,45,0,1);
INPAapiResultAnalog(real_zahl,"STAT_EINGANGSDREHZAHL1_WERT",1);
realtostring(real_zahl,"4.0",text_var);
ftextout("Drehzahl Teilgetriebe 1 : "+text_var+" 1/min ",20,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_SG_TEMPERATUR_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout("Getriebetemperatur : "+text_var+" <20>C ",20,45,0,1);
INPAapiResultAnalog(real_zahl,"STAT_EINGANGSDREHZAHL2_WERT",1);
realtostring(real_zahl,"4.0",text_var);
ftextout("Drehzahl Teilgetriebe 2 : "+text_var+" 1/min ",21,0,0,1);
INPAapiJob(sgbd,"STATUS_TESTPRG_ISTZUSTAND","0x30","");
ftextout("< F9 > Bildschirmdruck" ,24,5,0,1);
ftextout("< F10> Zur<75>ck" ,26,5,0,1);
ftextout("<Shift> + < F10> Exit" ,28,45,0,1);
}
}
// **************************
// *** Steuernscreen Getriebe ***
// **************************
SCREEN s_steuern_getriebe()
{
ftextout("Ansteuern",1,0,1,0);
ftextout("",3,0,0,0);
LINE("","")
{
ftextout("Getriebe einlernen ( Schaltstangen )",1,0,1,1);
ftextout("< F1 > Getriebe einlernen",8,0,0,1);
ftextout("Testbedingung: Fahrzeug steht, Bremse getreten, Motor l<>uft,",12,0,1,4);
INPAapiJob(sgbd,"STATUS_ISTWERTE_LESEN","","");
INPAapiResultAnalog(real_zahl,"STAT_GESCHWINDIGKEIT_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout("Fzg. Geschwindigkeit : "+text_var+" km ",16,0,0,1);
INPAapiResultAnalog(real_zahl,"STAT_MOTORDREHZAHL_WERT",1);
realtostring(real_zahl,"3.2",text_var);
ftextout("Motordrehzahl : "+text_var+" 1/min ",16,45,0,1);
INPAapiJob(sgbd,"STATUS_TESTPRG_ISTZUSTAND","0x32","");
ftextout("< F9 > Bildschirmdruck" ,20,5,0,1);
ftextout("< F10> Zur<75>ck" ,22,5,0,1);
ftextout("<Shift> + < F10> Exit" ,22,45,0,1);
}
}
// **************************
// *** Steuernscreen Abfragen ***
// **************************
SCREEN s_steuern_abfragen()
{
ftextout("Ansteuern",1,0,1,0);
ftextout("",3,0,0,0);
LINE("","")
{
ftextout("Test- und Einlernprogramm abfragen : ",0,0,1,4);
ftextout(te_job,5,0,1,1);
INPAapiJob(sgbd,"STATUS_TESTPRG_ISTZUSTAND",te_id,"");
delay(1000);
INPAapiJob(sgbd,"STATUS_TESTPRG_ISTZUSTAND",te_id,"");
INPAapiResultText(text_var,"STAT_STATUS_TESTPRG_TEXT",1,"");
ftextout("Status Testprogramm : " +text_var+" ",10,0,0,1);
if ( int_id == 0x30)
{
INPAapiResultText(text_var,"STAT_FEHLERMELDUNG_TEXT",1,"");
ftextout("Fehlermeldung : "+text_var,17,0,0,1);
}
if (int_id == 0x32)
{
INPAapiResultText(text_var,"STAT_ZUSTAND_TESTPRG_TEXT",1,"");
ftextout("Einlernzustand : "+text_var+ " ",15,0,0,1);
INPAapiResultText(text_var,"STAT_FEHLERMELDUNG_TEXT",1,"");
ftextout("Fehlermeldung : "+text_var+ " ",17,0,0,1);
INPAapiResultInt(int_zahl,"STAT_ZUSTAND_TESTPRG_DEZIMAL",1);
if (int_zahl == 0x0C )
{
ftextout("Damit die Einlernwerte gespeichert werden, ",23,0,1,1);
ftextout("muss das Steuerger<65>t jetzt einschlafen!",26,0,1,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);
}
}
// -- EOF --