php.net |  support |  documentation |  report a bug |  advanced search |  search howto |  statistics |  random bug |  login
Bug #43521 Problem with Variant/Parameters
Submitted: 2007-12-06 16:25 UTC Modified: -
Votes:11
Avg. Score:4.6 ± 0.8
Reproduced:10 of 10 (100.0%)
Same Version:2 (20.0%)
Same OS:6 (60.0%)
From: oespeter at gravityshock dot biz Assigned:
Status: Open Package: COM related
PHP Version: 5.2.5 OS: Win2k; Win2003 Server
Private report: No CVE-ID: None
Have you experienced this issue?
Rate the importance of this bug to you:

 [2007-12-06 16:25 UTC] oespeter at gravityshock dot biz
Description:
------------
Hi, I have problems fetching data from an special database over a com-based sdk. With VisualBasic it's not a problem, but the same code doesn't work with php. Some folks (lists/forums) said it may be an bug in the COM-Extension of PHP.
The error occurs with a COM based SDK (called PI-SDK from OsiSoft Inc.). I can work via COM with all functions that need no parameters. But most of the functions that need params didn't work with php. With VisualBasic it works without problems. I testet with PHP 5.2.2/3/4/5 (snaps and zend.com), 5.3.0-dev(snap from today).

Reproduce code:
---------------
Because of comercial licence ist not reproducible for the comunity :-/
//Following works fine:
$comObjPi = new COM('PISDK.PISDK');
$server = $comObjPi->Servers->Item("123.123.123.123");
$server->Open("123.123.123.123;UID=foo;pwd=bar");
$point = $server->PIPoints("SINUSOID");
echo "\n Last value: ".$point->Data->SnapShot()->Value."\n";
echo "\n Last Timestamp: ".$point->Data->SnapShot()->TimeStamp."\n";
com_load_typelib('PISDK.PISDK');
//the following throws exceptions:
try{
  $value = $point->Data->ArcValue(new Variant(mktime(), VT_R8), rtBefore);
  echo "\n Value before now (last value): ".$point->Data->SnapShot()->Value."\n";
} catch(Exception $e){
  print("\nException ".$e->getMessage()." TraceString:".$e->getTraceAsString());
}

Expected result:
----------------
Last value: 47.11
Last Timestamp: 123456789
Value before now (last value): 47.11


Actual result:
--------------
Last value: 47.11
Last Timestamp: 123456789
Exception Parameter 0: Typkonflikt.  //Type-Mismatch in the english
version
 TraceString: #0 C:\php_pi\pitest.php(10): variant->ArcValue(Object(variant), 6)
#1 {main}

Patches

Add a Patch

Pull Requests

Add a Pull Request

 
PHP Copyright © 2001-2020 The PHP Group
All rights reserved.
Last updated: Wed Oct 28 15:01:23 2020 UTC