Hi,
I try to update a unique field in project elements. I prepare a csv and xlsx file with only 2 columns : Id and contractCode. As I try to import, an error is raised.
I try to import an update file in csv or xlsx with the same results :
My csv file edited with npp:
id;contractCode; 48;"100000"; 17;"25000"; 74;"25000"; 54;"15000"; ...
The Log lines corresponding :
2020-08-26 17:33:35.462 ** ERROR ** [V8.5.3] ERROR ** 2020-08-26 17:33:35.470 ** ERROR ** [V8.5.3] on file 'C:inetpubwwwrootprojeqtorexternalXLSXReaderXLSXReader.php' at line (256) 2020-08-26 17:33:35.476 ** ERROR ***** [V8.5.3] cause = Array and string offset access syntax with curly braces is deprecated
Should I look for a problem on the server or the file is not correctly constructed ?
configuration : Windows Server 2016, IIS-fastcgi, PHP 7.4.8, postgresql 12, projeqtor 8.5.3
Thanks for your help
Just remove the extra unexpeted ";" at the end of each line.
Hi, thanks for your answer,
But I had already tested without the ending semicolon. After my first unsucessful tries (xlsx, csv), I added the semicolon after I looked at the format of the csv exported in tabular screen.
After the modifications, I have the exact same error raised :
2020-08-28 17:59:02.429 ** ERROR ** [V8.5.3] ERROR ** 2020-08-28 17:59:02.437 ** ERROR ** [V8.5.3] on file 'C:inetpubwwwrootprojeqtorexternalXLSXReaderXLSXReader.php' at line (256) 2020-08-28 17:59:02.443 ** ERROR ***** [V8.5.3] cause = Array and string offset access syntax with curly braces is deprecated
As php raised a deprecation alert, I was wondering if it could be the installation on the server with an encoding problem ? or the use of php 7.4 ?
What I have found concerning 7.4 and this deprecation :
https://www.php.net/manual/en/migration74.deprecated.php
Could it be such files in PHPoffice ?
Thanks.
hint :
give a try to real "Coma Separated Value" without curly braces ? just separate your colum with a ',' and don't use any curly braces ' " ' .
'cause as it said,
2020-08-26 17:33:35.476 ** ERROR ** [V8.5.3] cause = Array and string offset access syntax with curly braces is deprecatedThanks for your help
I have also tried with comma with same results.
the curly brase caracters are { and } 😉
Hi,
I manage to mount a VM with ubuntu / apache/php 4.3/posgresql12/projeqtor8.5.3.
I have no problem with the import of the file.
The file which raise the exception and deprecation issue ,(projeqtorexternalXLSXReaderXLSXReader.php) has this 256 line:
Should be :
$index += (ord($col[$i]) - 64) * pow(26, $colLen-$i-1);
I don't understand the error on my production server (windows/IIS/PHP/...) and not in my VM, as I use the same import file. Could it be that php is tweaked in ubuntu package to accept this deprecation ?
Hi,
This is effectively an error in external library XLSXReader.
The fix you propose seem correct, we'll inculde it in V8.5.5.
We'll try and upgrade this external library on V8.6.0 to check if XLSReader team already fixed the issue.
You possibly don't have issue on your VM if:
- you PHP version is lower than 7.4
- log level in your php.ini does not trace deprecation



