|  | @@ -0,0 +1,349 @@
 | 
	
		
			
				|  |  | +<?xml version="1.0" encoding="utf-8"?>
 | 
	
		
			
				|  |  | +<fragment xmlns="http://www.holeschak.de/BmwDeepObd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.holeschak.de/BmwDeepObd BmwDeepObd.xsd">
 | 
	
		
			
				|  |  | +  <page name="!PAGE_NAME" display-mode="list" fontsize="medium" gauges-portrait="2" gauges-landscape="4" logfile="DDEAbgleich.log">
 | 
	
		
			
				|  |  | +    <strings>
 | 
	
		
			
				|  |  | +      <string name="!PAGE_NAME">DDE 5 Abgleich</string>
 | 
	
		
			
				|  |  | +      <string name="!JOB#AGR_ABGLEICH_LESEN_WERT"> AGR (Frischluftrate)</string>
 | 
	
		
			
				|  |  | +      <string name="!JOB#LLA_ABGLEICH_LESEN_WERT"> Anhebung Leerlaufdrehzahl [u/min]</string>
 | 
	
		
			
				|  |  | +    </strings>
 | 
	
		
			
				|  |  | +    <display name="!JOB#AGR_ABGLEICH_LESEN_WERT" result="AGR_ABGLEICH_LESEN_WERT" format="L" display-order="0" grid-type="text" min-value="0" max-value="100" log_tag="AGR" />
 | 
	
		
			
				|  |  | +    <display name="!JOB#LLA_ABGLEICH_LESEN_WERT" result="LLA_ABGLEICH_LESEN_WERT" format="L" display-order="0" grid-type="text" min-value="0" max-value="100" log_tag="LLA" />
 | 
	
		
			
				|  |  | +    <jobs sgbd="D50M57E1" />
 | 
	
		
			
				|  |  | +    <code show_warnings="true">
 | 
	
		
			
				|  |  | +    <![CDATA[
 | 
	
		
			
				|  |  | +    class PageClass
 | 
	
		
			
				|  |  | +    {
 | 
	
		
			
				|  |  | +        // Button deklarieren
 | 
	
		
			
				|  |  | +        private Button buttonAGRserie;
 | 
	
		
			
				|  |  | +        private Button buttonAGRred;
 | 
	
		
			
				|  |  | +        private Button buttonLLA0;
 | 
	
		
			
				|  |  | +        private Button buttonLLA50;
 | 
	
		
			
				|  |  | +        private Button buttonLLA70;
 | 
	
		
			
				|  |  | +        private Button buttonLLA100;
 | 
	
		
			
				|  |  | +        
 | 
	
		
			
				|  |  | +        // Ablaufvariable deklarieren und initialisieren
 | 
	
		
			
				|  |  | +        // diese boolsche Variable wird vom Button auf true gesetzt und in der ExecuteJob Methode ausgewertet
 | 
	
		
			
				|  |  | +        // wo dann ggf. der eigentliche Befehl ans Steuergerät ausgeführt wird
 | 
	
		
			
				|  |  | +        private bool set_AGR_serie = false;
 | 
	
		
			
				|  |  | +        private bool set_AGR_red = false;
 | 
	
		
			
				|  |  | +        private bool set_LLA_0 = false;
 | 
	
		
			
				|  |  | +        private bool set_LLA_50 = false;
 | 
	
		
			
				|  |  | +        private bool set_LLA_70 = false;
 | 
	
		
			
				|  |  | +        private bool set_LLA_100 = false;
 | 
	
		
			
				|  |  | +        
 | 
	
		
			
				|  |  | +        // Seitenaufbau: 
 | 
	
		
			
				|  |  | +        // <display... tags müssen direkt unter <page... stehen und result="RESULT_NAME" (ohne job name) enthalten
 | 
	
		
			
				|  |  | +        // diese werden unterhalb von der Funktion ExecuteJob befüllt
 | 
	
		
			
				|  |  | +        // <job... tags wie normalerweise gibt es nicht
 | 
	
		
			
				|  |  | +        // Es darf nur ein <jobs> tag in dieser form vorhanden sein: <jobs sgbg="sgbdname" />
 | 
	
		
			
				|  |  | +        // Jedenfalls wurde bei meinen Tests die ExecuteJobs Funktion niemals aufgerufen wenn in der ccpage 
 | 
	
		
			
				|  |  | +        // jobs im normalen Format enthalten waren. Ob das wirklich so ist oder ich einen anderen Fehler hatte 
 | 
	
		
			
				|  |  | +        // muss ich erst noch rausfinden. 
 | 
	
		
			
				|  |  | +        
 | 
	
		
			
				|  |  | +        public void CreateLayout(ActivityMain activity, JobReader.PageInfo pageInfo, LinearLayout pageLayout)
 | 
	
		
			
				|  |  | +        {
 | 
	
		
			
				|  |  | +            LinearLayout buttonLayout = new LinearLayout(activity);
 | 
	
		
			
				|  |  | +            buttonLayout.Orientation = Orientation.Horizontal;
 | 
	
		
			
				|  |  | +		
 | 
	
		
			
				|  |  | +            LinearLayout.LayoutParams buttonLayoutParams = new LinearLayout.LayoutParams(
 | 
	
		
			
				|  |  | +                ViewGroup.LayoutParams.MatchParent,
 | 
	
		
			
				|  |  | +                ViewGroup.LayoutParams.WrapContent);
 | 
	
		
			
				|  |  | +            buttonLayoutParams.Weight = 1;
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			// Button AGR Serie
 | 
	
		
			
				|  |  | +            buttonAGRserie = new Button(activity);
 | 
	
		
			
				|  |  | +            buttonAGRserie.Text = "AGR Serie";
 | 
	
		
			
				|  |  | +            buttonAGRserie.Click += delegate
 | 
	
		
			
				|  |  | +            {
 | 
	
		
			
				|  |  | +                // button setzt klassenweite variable auf true, diese wird beim durchlauf von ExecuteJob ausgewertet
 | 
	
		
			
				|  |  | +                set_AGR_serie = true;
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                //// Benachrichtung anzeigen wenn man will
 | 
	
		
			
				|  |  | +                //ActivityMain.ShowNotification(activity, 0, 2,
 | 
	
		
			
				|  |  | +                //    "DDE Abgleich",
 | 
	
		
			
				|  |  | +                //    "AGR 0");
 | 
	
		
			
				|  |  | +            };
 | 
	
		
			
				|  |  | +            buttonLayout.AddView(buttonAGRserie, buttonLayoutParams);
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			// Button AGR Reduziert
 | 
	
		
			
				|  |  | +            buttonAGRred = new Button(activity);
 | 
	
		
			
				|  |  | +            buttonAGRred.Text = "AGR min.";
 | 
	
		
			
				|  |  | +            buttonAGRred.Click += delegate
 | 
	
		
			
				|  |  | +            {
 | 
	
		
			
				|  |  | +                // button setzt klassenweite variable auf true, diese wird beim durchlauf von ExecuteJob ausgewertet
 | 
	
		
			
				|  |  | +                set_AGR_red = true;
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                //// Benachrichtung anzeigen wenn man will
 | 
	
		
			
				|  |  | +                //ActivityMain.ShowNotification(activity, 0, 2,
 | 
	
		
			
				|  |  | +                //    "DDE Abgleich",
 | 
	
		
			
				|  |  | +                //    "AGR 87");
 | 
	
		
			
				|  |  | +            };
 | 
	
		
			
				|  |  | +            buttonLayout.AddView(buttonAGRred, buttonLayoutParams);
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			// Button Leerlauf Serie
 | 
	
		
			
				|  |  | +            buttonLLA0 = new Button(activity);
 | 
	
		
			
				|  |  | +            buttonLLA0.Text = "LL +0";
 | 
	
		
			
				|  |  | +            buttonLLA0.Click += delegate
 | 
	
		
			
				|  |  | +            {
 | 
	
		
			
				|  |  | +                // button setzt klassenweite variable auf true, diese wird beim durchlauf von ExecuteJob ausgewertet
 | 
	
		
			
				|  |  | +                set_LLA_0 = true;
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                //// Benachrichtung anzeigen wenn man will
 | 
	
		
			
				|  |  | +				//ActivityMain.ShowNotification(activity, 0, 2,
 | 
	
		
			
				|  |  | +				//    "DDE Abgleich",
 | 
	
		
			
				|  |  | +                //    "Leerlaufdrehzahl +0");
 | 
	
		
			
				|  |  | +            };
 | 
	
		
			
				|  |  | +            buttonLayout.AddView(buttonLLA0, buttonLayoutParams);
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			// Button Leerlauf +50
 | 
	
		
			
				|  |  | +            buttonLLA50 = new Button(activity);
 | 
	
		
			
				|  |  | +            buttonLLA50.Text = "LL +50";
 | 
	
		
			
				|  |  | +            buttonLLA50.Click += delegate
 | 
	
		
			
				|  |  | +            {
 | 
	
		
			
				|  |  | +                // button setzt klassenweite variable auf true, diese wird beim durchlauf von ExecuteJob ausgewertet
 | 
	
		
			
				|  |  | +                set_LLA_50 = true;
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                //// Benachrichtung anzeigen wenn man will
 | 
	
		
			
				|  |  | +                //ActivityMain.ShowNotification(activity, 0, 2,
 | 
	
		
			
				|  |  | +                //    "DDE Abgleich",
 | 
	
		
			
				|  |  | +                //    "Leerlaufdrehzahl +50");
 | 
	
		
			
				|  |  | +            };
 | 
	
		
			
				|  |  | +            buttonLayout.AddView(buttonLLA50, buttonLayoutParams);
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			// Button Leerlauf +70
 | 
	
		
			
				|  |  | +            buttonLLA70 = new Button(activity);
 | 
	
		
			
				|  |  | +            buttonLLA70.Text = "LL +70";
 | 
	
		
			
				|  |  | +            buttonLLA70.Click += delegate
 | 
	
		
			
				|  |  | +            {
 | 
	
		
			
				|  |  | +                // button setzt klassenweite variable auf true, diese wird beim durchlauf von ExecuteJob ausgewertet
 | 
	
		
			
				|  |  | +                set_LLA_70 = true;
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                //// Benachrichtung anzeigen wenn man will
 | 
	
		
			
				|  |  | +                //ActivityMain.ShowNotification(activity, 0, 2,
 | 
	
		
			
				|  |  | +                //    "DDE Abgleich",
 | 
	
		
			
				|  |  | +                //    "Leerlaufdrehzahl +70");
 | 
	
		
			
				|  |  | +            };
 | 
	
		
			
				|  |  | +            buttonLayout.AddView(buttonLLA70, buttonLayoutParams);
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			// Button Leerlauf +100
 | 
	
		
			
				|  |  | +            buttonLLA100 = new Button(activity);
 | 
	
		
			
				|  |  | +            buttonLLA100.Text = "LL +100";
 | 
	
		
			
				|  |  | +            buttonLLA100.Click += delegate
 | 
	
		
			
				|  |  | +            {
 | 
	
		
			
				|  |  | +                // button setzt klassenweite variable auf true, diese wird beim durchlauf von ExecuteJob ausgewertet
 | 
	
		
			
				|  |  | +                set_LLA_100 = true;
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                //// Benachrichtung anzeigen wenn man will
 | 
	
		
			
				|  |  | +                //ActivityMain.ShowNotification(activity, 0, 2,
 | 
	
		
			
				|  |  | +                //    "DDE Abgleich",
 | 
	
		
			
				|  |  | +                //    "Leerlaufdrehzahl +100");
 | 
	
		
			
				|  |  | +            };
 | 
	
		
			
				|  |  | +            buttonLayout.AddView(buttonLLA100, buttonLayoutParams);
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +		
 | 
	
		
			
				|  |  | +            LinearLayout.LayoutParams layoutParams = new LinearLayout.LayoutParams(
 | 
	
		
			
				|  |  | +                ViewGroup.LayoutParams.MatchParent,
 | 
	
		
			
				|  |  | +                ViewGroup.LayoutParams.WrapContent);
 | 
	
		
			
				|  |  | +            pageLayout.AddView(buttonLayout, layoutParams);
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +		
 | 
	
		
			
				|  |  | +        public void DestroyLayout(JobReader.PageInfo pageInfo)
 | 
	
		
			
				|  |  | +        {
 | 
	
		
			
				|  |  | +            buttonAGRserie = null;
 | 
	
		
			
				|  |  | +            buttonAGRred = null;
 | 
	
		
			
				|  |  | +            buttonLLA0 = null;
 | 
	
		
			
				|  |  | +            buttonLLA50 = null;
 | 
	
		
			
				|  |  | +            buttonLLA70 = null;
 | 
	
		
			
				|  |  | +            buttonLLA100 = null;
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        public void ExecuteJob(EdiabasNet ediabas, ref MultiMap<string, EdiabasNet.ResultData> resultDict, bool firstCall)
 | 
	
		
			
				|  |  | +        {
 | 
	
		
			
				|  |  | +            List<Dictionary<string, EdiabasNet.ResultData>> resultSets;  // hier werden die job results zwischengespeichert
 | 
	
		
			
				|  |  | +            
 | 
	
		
			
				|  |  | +            // unterhalb der/die JOB(s) zur Datenanzeige
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +            ediabas.ArgString = "agr";
 | 
	
		
			
				|  |  | +            ediabas.ArgBinaryStd = null;
 | 
	
		
			
				|  |  | +            ediabas.ResultsRequests = string.Empty;
 | 
	
		
			
				|  |  | +            ediabas.ExecuteJob("ABGLEICH_LESEN");
 | 
	
		
			
				|  |  | +            
 | 
	
		
			
				|  |  | +            resultSets = ediabas.ResultSets;
 | 
	
		
			
				|  |  | +            if (resultSets != null && resultSets.Count >= 2)
 | 
	
		
			
				|  |  | +            {
 | 
	
		
			
				|  |  | +                // results der aktuellen Abfrage mit unveränderten result namen übernehmen
 | 
	
		
			
				|  |  | +                EdiabasThread.MergeResultDictionarys(ref resultDict, resultSets[1], "AGR_");
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			ediabas.ArgString = "lla";
 | 
	
		
			
				|  |  | +            ediabas.ArgBinaryStd = null;
 | 
	
		
			
				|  |  | +            ediabas.ResultsRequests = string.Empty;
 | 
	
		
			
				|  |  | +            ediabas.ExecuteJob("ABGLEICH_LESEN");
 | 
	
		
			
				|  |  | +            
 | 
	
		
			
				|  |  | +            resultSets = ediabas.ResultSets;
 | 
	
		
			
				|  |  | +            if (resultSets != null && resultSets.Count >= 2)
 | 
	
		
			
				|  |  | +            {
 | 
	
		
			
				|  |  | +                // results der aktuellen Abfrage mit unveränderten result namen übernehmen
 | 
	
		
			
				|  |  | +                EdiabasThread.MergeResultDictionarys(ref resultDict, resultSets[1], "LLA_");
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +						
 | 
	
		
			
				|  |  | +            
 | 
	
		
			
				|  |  | +            // ENDE JOBs
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +            
 | 
	
		
			
				|  |  | +            // Button JOBs
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			if (set_AGR_serie) {
 | 
	
		
			
				|  |  | +                ediabas.ArgString = "agr;0";
 | 
	
		
			
				|  |  | +                ediabas.ArgBinaryStd = null;
 | 
	
		
			
				|  |  | +                ediabas.ResultsRequests = "JOB_STATUS";
 | 
	
		
			
				|  |  | +                ediabas.ExecuteJob("ABGLEICH_VERSTELLEN");
 | 
	
		
			
				|  |  | +				
 | 
	
		
			
				|  |  | +				ediabas.ArgString = "agr;0";
 | 
	
		
			
				|  |  | +                ediabas.ArgBinaryStd = null;
 | 
	
		
			
				|  |  | +                ediabas.ResultsRequests = "JOB_STATUS";
 | 
	
		
			
				|  |  | +                ediabas.ExecuteJob("ABGLEICH_PROG");
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                // JOB RESULT ermitteln (wird derzeit nicht weiter verwendet weil man es anhand der geänderten Daten 
 | 
	
		
			
				|  |  | +                // und den blinkenden LEDs im KOMBI eh sofort sieht)
 | 
	
		
			
				|  |  | +                //resultSets = ediabas.ResultSets;
 | 
	
		
			
				|  |  | +                //if (resultSets != null && resultSets.Count >= 2)
 | 
	
		
			
				|  |  | +                //{
 | 
	
		
			
				|  |  | +                //  EdiabasThread.MergeResultDictionarys(ref resultDict, resultSets[1]);
 | 
	
		
			
				|  |  | +                //}
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                // Ablaufvariable wieder zurücksetzen, sonst würde dieser Befehl nun bei jedem weiteren Durchlauf ausgeführt werden...
 | 
	
		
			
				|  |  | +                set_AGR_serie = false;
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			if (set_AGR_red) {
 | 
	
		
			
				|  |  | +                ediabas.ArgString = "agr;87";
 | 
	
		
			
				|  |  | +                ediabas.ArgBinaryStd = null;
 | 
	
		
			
				|  |  | +                ediabas.ResultsRequests = "JOB_STATUS";
 | 
	
		
			
				|  |  | +                ediabas.ExecuteJob("ABGLEICH_VERSTELLEN");
 | 
	
		
			
				|  |  | +				
 | 
	
		
			
				|  |  | +				ediabas.ArgString = "agr;87";
 | 
	
		
			
				|  |  | +                ediabas.ArgBinaryStd = null;
 | 
	
		
			
				|  |  | +                ediabas.ResultsRequests = "JOB_STATUS";
 | 
	
		
			
				|  |  | +                ediabas.ExecuteJob("ABGLEICH_PROG");
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                // JOB RESULT ermitteln (wird derzeit nicht weiter verwendet weil man es anhand der geänderten Daten 
 | 
	
		
			
				|  |  | +                // und den blinkenden LEDs im KOMBI eh sofort sieht)
 | 
	
		
			
				|  |  | +                //resultSets = ediabas.ResultSets;
 | 
	
		
			
				|  |  | +                //if (resultSets != null && resultSets.Count >= 2)
 | 
	
		
			
				|  |  | +                //{
 | 
	
		
			
				|  |  | +                //  EdiabasThread.MergeResultDictionarys(ref resultDict, resultSets[1]);
 | 
	
		
			
				|  |  | +                //}
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                // Ablaufvariable wieder zurücksetzen, sonst würde dieser Befehl nun bei jedem weiteren Durchlauf ausgeführt werden...
 | 
	
		
			
				|  |  | +                set_AGR_red = false;
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +            if (set_LLA_0) {
 | 
	
		
			
				|  |  | +                ediabas.ArgString = "lla;0";
 | 
	
		
			
				|  |  | +                ediabas.ArgBinaryStd = null;
 | 
	
		
			
				|  |  | +                ediabas.ResultsRequests = "JOB_STATUS";
 | 
	
		
			
				|  |  | +                ediabas.ExecuteJob("ABGLEICH_VERSTELLEN");
 | 
	
		
			
				|  |  | +				
 | 
	
		
			
				|  |  | +				ediabas.ArgString = "lla;0";
 | 
	
		
			
				|  |  | +                ediabas.ArgBinaryStd = null;
 | 
	
		
			
				|  |  | +                ediabas.ResultsRequests = "JOB_STATUS";
 | 
	
		
			
				|  |  | +                ediabas.ExecuteJob("ABGLEICH_PROG");
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                // JOB RESULT ermitteln (wird derzeit nicht weiter verwendet weil man es anhand der geänderten Daten 
 | 
	
		
			
				|  |  | +                // und den blinkenden LEDs im KOMBI eh sofort sieht)
 | 
	
		
			
				|  |  | +                //resultSets = ediabas.ResultSets;
 | 
	
		
			
				|  |  | +                //if (resultSets != null && resultSets.Count >= 2)
 | 
	
		
			
				|  |  | +                //{
 | 
	
		
			
				|  |  | +                //  EdiabasThread.MergeResultDictionarys(ref resultDict, resultSets[1]);
 | 
	
		
			
				|  |  | +                //}
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                // Ablaufvariable wieder zurücksetzen, sonst würde dieser Befehl nun bei jedem weiteren Durchlauf ausgeführt werden...
 | 
	
		
			
				|  |  | +                set_LLA_0 = false;
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			if (set_LLA_50) {
 | 
	
		
			
				|  |  | +                ediabas.ArgString = "lla;50";
 | 
	
		
			
				|  |  | +                ediabas.ArgBinaryStd = null;
 | 
	
		
			
				|  |  | +                ediabas.ResultsRequests = "JOB_STATUS";
 | 
	
		
			
				|  |  | +                ediabas.ExecuteJob("ABGLEICH_VERSTELLEN");
 | 
	
		
			
				|  |  | +				
 | 
	
		
			
				|  |  | +				ediabas.ArgString = "lla;50";
 | 
	
		
			
				|  |  | +                ediabas.ArgBinaryStd = null;
 | 
	
		
			
				|  |  | +                ediabas.ResultsRequests = "JOB_STATUS";
 | 
	
		
			
				|  |  | +                ediabas.ExecuteJob("ABGLEICH_PROG");
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                // JOB RESULT ermitteln (wird derzeit nicht weiter verwendet weil man es anhand der geänderten Daten 
 | 
	
		
			
				|  |  | +                // und den blinkenden LEDs im KOMBI eh sofort sieht)
 | 
	
		
			
				|  |  | +                //resultSets = ediabas.ResultSets;
 | 
	
		
			
				|  |  | +                //if (resultSets != null && resultSets.Count >= 2)
 | 
	
		
			
				|  |  | +                //{
 | 
	
		
			
				|  |  | +                //  EdiabasThread.MergeResultDictionarys(ref resultDict, resultSets[1]);
 | 
	
		
			
				|  |  | +                //}
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                // Ablaufvariable wieder zurücksetzen, sonst würde dieser Befehl nun bei jedem weiteren Durchlauf ausgeführt werden...
 | 
	
		
			
				|  |  | +                set_LLA_50 = false;
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			if (set_LLA_70) {
 | 
	
		
			
				|  |  | +                ediabas.ArgString = "lla;70";
 | 
	
		
			
				|  |  | +                ediabas.ArgBinaryStd = null;
 | 
	
		
			
				|  |  | +                ediabas.ResultsRequests = "JOB_STATUS";
 | 
	
		
			
				|  |  | +                ediabas.ExecuteJob("ABGLEICH_VERSTELLEN");
 | 
	
		
			
				|  |  | +				
 | 
	
		
			
				|  |  | +				ediabas.ArgString = "lla;70";
 | 
	
		
			
				|  |  | +                ediabas.ArgBinaryStd = null;
 | 
	
		
			
				|  |  | +                ediabas.ResultsRequests = "JOB_STATUS";
 | 
	
		
			
				|  |  | +                ediabas.ExecuteJob("ABGLEICH_PROG");
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                // JOB RESULT ermitteln (wird derzeit nicht weiter verwendet weil man es anhand der geänderten Daten 
 | 
	
		
			
				|  |  | +                // und den blinkenden LEDs im KOMBI eh sofort sieht)
 | 
	
		
			
				|  |  | +                //resultSets = ediabas.ResultSets;
 | 
	
		
			
				|  |  | +                //if (resultSets != null && resultSets.Count >= 2)
 | 
	
		
			
				|  |  | +                //{
 | 
	
		
			
				|  |  | +                //  EdiabasThread.MergeResultDictionarys(ref resultDict, resultSets[1]);
 | 
	
		
			
				|  |  | +                //}
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                // Ablaufvariable wieder zurücksetzen, sonst würde dieser Befehl nun bei jedem weiteren Durchlauf ausgeführt werden...
 | 
	
		
			
				|  |  | +                set_LLA_70 = false;
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +			if (set_LLA_100) {
 | 
	
		
			
				|  |  | +                ediabas.ArgString = "lla;100";
 | 
	
		
			
				|  |  | +                ediabas.ArgBinaryStd = null;
 | 
	
		
			
				|  |  | +                ediabas.ResultsRequests = "JOB_STATUS";
 | 
	
		
			
				|  |  | +                ediabas.ExecuteJob("ABGLEICH_VERSTELLEN");
 | 
	
		
			
				|  |  | +				
 | 
	
		
			
				|  |  | +				ediabas.ArgString = "lla;100";
 | 
	
		
			
				|  |  | +                ediabas.ArgBinaryStd = null;
 | 
	
		
			
				|  |  | +                ediabas.ResultsRequests = "JOB_STATUS";
 | 
	
		
			
				|  |  | +                ediabas.ExecuteJob("ABGLEICH_PROG");
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                // JOB RESULT ermitteln (wird derzeit nicht weiter verwendet weil man es anhand der geänderten Daten 
 | 
	
		
			
				|  |  | +                // und den blinkenden LEDs im KOMBI eh sofort sieht)
 | 
	
		
			
				|  |  | +                //resultSets = ediabas.ResultSets;
 | 
	
		
			
				|  |  | +                //if (resultSets != null && resultSets.Count >= 2)
 | 
	
		
			
				|  |  | +                //{
 | 
	
		
			
				|  |  | +                //  EdiabasThread.MergeResultDictionarys(ref resultDict, resultSets[1]);
 | 
	
		
			
				|  |  | +                //}
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                // Ablaufvariable wieder zurücksetzen, sonst würde dieser Befehl nun bei jedem weiteren Durchlauf ausgeführt werden...
 | 
	
		
			
				|  |  | +                set_LLA_100 = false;
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +			
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +    }
 | 
	
		
			
				|  |  | +    ]]>
 | 
	
		
			
				|  |  | +    </code>
 | 
	
		
			
				|  |  | +  </page>
 | 
	
		
			
				|  |  | +</fragment>
 |