SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Der CSS-Problemlöser

Der CSS-Problemlöser zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > PHP für Fortgeschrittene und Experten

PHP für Fortgeschrittene und Experten Fortgeschrittene und Experten können hier über ihre Probleme und Bedenken talken

 
 
Themen-Optionen Ansicht
  #1  
Alt 14.03.2013, 14:04:18
Datta90 Datta90 ist offline
Anfänger
 
Registriert seit: Mar 2013
Alter: 30
Beiträge: 11
Schreiben auf Simatic.net OPC Server (SOAP XML) polymorphes Attribut

Hallo ihr Wissenden,
ich möchte mittels php auf meinen Simatic net OPC Server schreibend zugreifen. Das lesen von Variablen bekomm ich soweit hin nur beim Schreibversuch kommt folgende Fehlermeldung:

Code:
Text=> The Server cannot convert the value to the requestet type. [ID]=> E_BADTYPE
In der von Siemens gegebenen Anleitung steht als Erklärung dieses Fehlers folgendes:

Code:
The server cannot convert the data between the specified format and/or requested data type and the canonical data type.
Nun mal mein Code zum schreiben:

PHP-Code:
<?php
error_reporting
(-1);
ini_set('display_errors'TRUE);

$wsdl       'http://192.168.38.1/OPC.Simatic.NET/SOPCWeb.asmx?WSDL';

//$zahl=1;
//$test=new SoapParam((int)$zahl,"Value");  sowas verrücktes habe ich auch schon probiert

$werte=array();
$werte["Options"]=array(
         
//"RequestDeadline"=>"",
         //"ReturnErrorText"=>"",
         //"ReturnDiagnosticInfo"=>47,
         //"ReturnItemTime"=>"",
         //"ReturnItemPath"=>"",
         //"ReturnItemName"=>True,
         //"ClientRequestHandle"=>"teeest",
         //"LocaleID"=>""
);
$werte["ItemList"]=array(
         
"Items"=>array(//"DiagnosticInfo"=>"",
                         //"Value"=>array(xsi:type="xsd:bool"=>True),  //erfolgloser versuch
                         //new SoapVar(2,XSD_INT,'xsd:int',Value),        //erfolgloser versuch
                        //new SoapParam((int)$zahl,Value),                   //erfolgloser versuch
                        //"Value" => $test,                                           //erfolgloser versuch
                        
"Value"=>4,    //1. Versuch von dem ich dachte das er klappen könnte - erfolglos
                         
"Quality"=>array(//"QualityField"=>"",
                                          //"LimitField"=>"",
                                          //"VendorField"=>""
                          
),
                         
//"ItemPath"=>"",
                         
"ItemName"=>"S7:[OPC_1]MINT12,9"//integer Variable deren wert ich schreiben möchte
                         //"ClientItemHandle"=>"",
                         //"Timestamp"=>"",
                         //"ResultID"=>"",
                         //"ValueTypeQualifier"=>"",
         //"ItemPath"=>"",

 
));
 
$werte["ReturnValuesOnReply"]=False;


$client = new SoapClient($wsdl);


$result $client->write($werte);
print_r ($result);                             //Alles ausgeben

?>
Zur Erklärung des Value-Attributes von Siemens entnehme ich folgendes:

Code:
Value: Der Wert des Items. Da es sich bei diesem Attribut um eine
polymorphe Angabe handelt, ist das zusätzliche Attribut xsi:type
notwendig (zum Beispiel: xsi:type=xsd:float).
Und hier liegt evtl. auch schon der Hund begraben. Wie ist es möglich dieses zusätzliche Atribut in meinem Code unterzubringen? Habe auch schon ein wenig mit dem SoapVar constructor rumgespielt...ohne Ergebnis.

Vielleicht hat von euch einer ne Idee.
Vielen Dank im Voraus.
Mit Zitat antworten
 

Stichworte
fehlermeldung, opc, simatic, type, xml


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Fatal error: Server was unable to process request. ---> Value cannot be null Datta90 PHP Grundlagen 10 13.03.2013 14:51:03
Brauche Hilfe Partygirl MySQL/MySQLi 10 01.03.2011 09:18:11
Download via Speicherbox von extermen Server -wie? SirRobin PHP für Fortgeschrittene und Experten 3 28.01.2006 15:30:48
3 verschiedene SQL-DB-Systeme auf 1 Server Anyt MySQL/MySQLi 2 08.01.2005 10:59:43


Alle Zeitangaben in WEZ +2. Es ist jetzt 06:50:05 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.


© 2001-2021 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt