Ankündigung

Einklappen
Keine Ankündigung bisher.

Problem mit Vergleich

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Problem mit Vergleich

    Hey Leute,

    bin in PHP ziemlich neu und bräuchte eure Hilfe...


    Folgendes Problem. Ich habe mir mit Palo Web (BI Tool) eine Oberfläche (Excel ähnlich) gebaut mit der ich eine Berechnung durchführen will. Hierzu habe ich einen Button implementiert und diesem ein PHP Skript hinterlegt, welches ETL-Prozesse aufruft. Da ich die Werte zwischendurch vergleichen muss, habe ich dies auch über das Skript realisiert. Nun folgendes Problem.

    Ich befürchte, dass der Vergleich nicht funktioniert und die Funktionen dann lahm gelegt werden.

    Hier mal der Code (bitte um Entschuldigung für meine Anfänger Programmierung:

    PHP-Code:
    function getValueold ()
    {
      
    // Der Vergleichswert wird in eine Variable geschrieben.
       
    $value activeworkbook()->sheets('ILV1')->Range('B22')->value;
       
      
    $target activeworkbook()->sheets('Vergleich')->range('A2');
      
    $target->value=$value;
      
    start_ilv();
    }                               
    function 
    start_ilv()
    {
      
    //Array mit den Namen der Kostenstellen, welche verrechnet werden sollen.
     
    $testen=array("Test","Test1","Test2","Test3","Test4","Test5");
      
    $i=0;
      
    //Übergeben der Kostenstelle
      
    while($i count($testen))
      {
        if(
    $i!= count($testen))
        {
          
    $Testen=$testen[$i];
          
    //Aufrufen des ersten ETL-Prozesses
          
    $pfad"C:\Batch_ILV1.bat $Testen";
          
    exec($pfad$output$return);
          
    $i++;
        }
        else{
          
    getValuenew();
        }      
      }
     
    }

    function 
    getValuenew()
    {
      
    //Auslesen der berechneten Werte. Diese werden zum Vergleich benötigt.
      
    $value activeworkbook()->sheets('ILV1')->Range('B22')->value;
       
      
    $target activeworkbook()->sheets('Vergleich')->range('B2');
      
    $target->value=$value;
      
    compare();
    }
    function 
    deleteLeistungen2()
     {
       
       
    $pfad"C:\Batch_ILV3.bat";
       
    exec($pfad$output$return);
       
    getValueold();
     }
    function 
    compare()
     {
       
    $old=activeworkbook()->sheets('Vergleich')->Range('A2')->value;
       
    $old=round($old,2);
       
    $new=activeworkbook()->sheets('Vergleich')->Range('B2')->value;
       
    $new=round($new,2);
       
       if(
    $old != $new)
       {
        
    deleteLeistungen2();
       }
       else
       {
         
    show_popup();
       }
     }
    function 
    show_popup() {
      
    // retrieve cell value used for msg text
      
    $value "Die Verrechnung der Leistungen ist abgeschlossen";
       
      
    // return command to show popup
      
    return array(array('msg','info','System-Information',$value));
      
    getValueold();

    Bis zur Funktion compare() funktioniert alles top. Danach leider keine Reaktion des Systems mehr. Was mache ich da falsch? Die Vergleichsfunktion ist mit am Wichtigsten, da dort die Verrechnung abgebrochen wird oder von vorne beginnt. Bitte um eure Hilfe. Weiß leider nicht mehr weiter.

  • #2
    Um was geht es denn genau?

    Das hier?

    PHP-Code:
    return array(array('msg','info','System-Information',$value));
    getValueold(); 
    If called from within a function, the return() statement immediately ends execution of the current function, and returns its argument as the value of the function call.

    Kommentar


    • #3
      Hinweis:
      php.de ist kein Supportforum für Fertigskripte. Wenn du Probleme mit einem Fertigskript hast dann wende dich bitte an den Hersteller. Dieser kennt sein System und kann dir besser helfen.

      Kommentar


      • #4
        PHP-Code:
         $pfad"C:\Batch_ILV3.bat"
        Backslash in doppelten Hochkomma = Escape-Sequenz. \B ist ein Backspace

        Kommentar

        Lädt...
        X