Itgentfr091 bij 'create or replace table' twinfield.banktransactions

Bij het uitvoeren van de volgende query

Create OR REPLACE TABLE tw_bank_transactions@mss
as
select *
from   Twinfield.Twinfield.BankTransactions@tfd 

krijg ik elke keer de foutmelding:

An error occured - a3cc4380-5d9f-44db-9bf4-86cca2e5591f
itgentfr091: Server was unable to process request. —> Invalid name character in ‘http://www.twinfield.com/_Unexpected’. (285454).

Op het forum staat dat een dergelijke foutmelding zelden zou moeten voorkomen, nu heb ik geprobeerd om enkel individuele administraties te selecteren en om all@tfd te selecteren, maar de foutmelding blijft zich voortdoen

De foutmelding treedt ook op bij het statement:

select *
from   Twinfield.Twinfield.BankTransactions@tfd 

De foutmelding itgentfr091 treedt al op na 600-1200 ms; het betreft dus niet de grootte van het datavolume.

De gebruikte API server-URL is https://api.accounting2.twinfield.com/webservices/processxml.asmx met parameter fin.trs.head.banktype equal bank.

De foutmelding treedt op bij beide administraties, maar niet bij een andere administratie uit een andere Twinfield-omgeving.

Vraag: treedt dit probleem alleen op bij BankTransactions en Cheques?

Twinfield verzoek

Het verzoek aan Twinfield is:

<?xml version="1.0" encoding="utf-8" ?>
<soap:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://www.w3.org/2003/05/soap-envelope"> 
<soap:Header>
  <Header xmlns="http://www.twinfield.com/">
    <CompanyCode>BEDRIJF</CompanyCode>
    <AccessToken>TOKEN</AccessToken>
  </Header>
</soap:Header>
<soap:Body>
  <ProcessXmlCompressed xmlns="http://www.twinfield.com/"><xmlRequest>eJy9lV1uwyAMx99zCpQDJKu0R8pdnOCsaHxkNlTt7ZtkyaZKXdVJkXnCYPnnP9iglFK6T76EyOoSfORjXas+WTzW74e32lRqGavPZk4Lg0NvzeBik4mbE4Jtrgg0Irlkdfu9/et+duw6jyZTQd1u1ha9vQ//Eq2D+Dkn+jdrAM87wZ6D9hPFp0Q5QhCBxRI6JBFZOYjAvIvYWBcOUhypq+oLSdT6ousMviC7j4hP+nhHXgeMLzH3uzrCUVDl2gJAeYGK1ItP66HKtDfkwlKPfr6O/1U17afpZ4KcyOBXAa/bH7vSA6Vg5shT1HlaPcxws9hUN4+gIt4=</xmlRequest></ProcessXmlCompressed>

</soap:Body>
</soap:Envelope>

Het decomprimeren van Twinfield XML verzoek gaat met to_char(zlib_decompress(base64_decode('...))).

Na decompressie van het verzoek staat er:

<columns xmlns="" code="410">
      <column>
        <field>fin.trs.head.yearperiod</field>
        <visible>true</visible>
      </column>
      <column>
        <field>fin.trs.head.bankcode</field>
        <visible>false</visible>
      </column>
      <column>
        <field>fin.trs.head.code</field>
        <visible>true</visible>
      </column>
      <column>
        <field>fin.trs.head.shortname</field>
        <visible>true</visible>
      </column>
      <column>
        <field>fin.trs.head.number</field>
        <visible>true</visible>
      </column>
      <column>
        <field>fin.trs.head.stmnumber</field>
        <visible>true</visible>
      </column>
      <column>
        <field>fin.trs.line.dim1</field>
        <visible>true</visible>
      </column>
      <column>
        <field>fin.trs.line.dim1name</field>
        <visible>true</visible>
      </column>
      <column>
        <field>fin.trs.head.curcode</field>
        <visible>false</visible>
      </column>
      <column>
        <field>fin.trs.line.valuesigned</field>
        <visible>false</visible>
      </column>
      <column>
        <field>fin.trs.line.basevaluesigned</field>
        <visible>true</visible>
      </column>
      <column>
        <field>fin.trs.line.repvaluesigned</field>
        <visible>false</visible>
      </column>
      <column>
        <field>fin.trs.head.startvalue</field>
        <visible>true</visible>
      </column>
      <column>
        <field>fin.trs.head.closevalue</field>
        <visible>true</visible>
      </column>
      <column>
        <field>fin.trs.head.status</field>
        <visible>true</visible>
      </column>
      <column>
        <field>fin.trs.head.banktype</field>
        <visible>true</visible>
        <operator>equal</operator>
<from>bank</from>

      </column>
    </columns>
Twinfield antwoord problematische omgeving

Het Twinfield-antwoord is:

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <soap:Body>
        <soap:Fault>
            <soap:Code>
                <soap:Value>soap:Receiver</soap:Value>
            </soap:Code>
            <soap:Reason>
                <soap:Text xml:lang="en">Server was unable to process request. ---&gt; Invalid name character in 'http://www.twinfield.com/_Unexpected'.</soap:Text>
            </soap:Reason>
            <soap:Detail />
        </soap:Fault>
    </soap:Body>
</soap:Envelope>
Twinfield antwoord andere omgeving

Het antwoord op een andere omgeving is echter:

<?xml version="1.0" encoding="utf-8"?>
<soap:Envelope xmlns:soap="http://www.w3.org/2003/05/soap-envelope" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
    <soap:Body>
        <ProcessXmlCompressedResponse xmlns="http://www.twinfield.com/">
            <ProcessXmlCompressedResult>eJytkztuwzAMhq9iaK/dbB1sZ+ncpUB2yqJjoXoEJJU2Z+vQI/UKlRNP2gR3EECQvz4+JP5+//THL++aKxLbGAZ1aJ9Vg2GKxobzoJLMTy/qOPaa4idjQ8jJSZapZrbE2cpyB5shUcCt1tjLko/JIY3Zo5rFGpwjJUYa1AyOMctvFxzUu1BOpcbZhlaI2wXBtDcEuiDZaPpOzC5UbgV3Q3iJJAF8FekVJ+vBFaiQvEaq4bzdb5QVia8nlb05G7A11h/+BVI7nxO4hAVHA+N19bM9B6x6/QK3TQlI7ry9pMnFrbL9n0lAEu/GaAgfa/gB6taN6x5rOv4B3WpXVw==</ProcessXmlCompressedResult>
        </ProcessXmlCompressedResponse>
    </soap:Body>
</soap:Envelope>

Wat na decompressie leidt tot:

<?xml version="1.0" encoding="utf-8"?><browse result="1" first="0" last="0" total="0"><th><td label="" hideforuser="false" type="String">fin.trs.head.yearperiod</td><td label="" hideforuser="false" type="String">fin.trs.head.code</td><td label="" hideforuser="false" type="String">fin.trs.head.shortname</td><td label="" hideforuser="false" type="Decimal">fin.trs.head.number</td><td label="" hideforuser="false" type="Number">fin.trs.head.stmnumber</td><td label="" hideforuser="false" type="String">fin.trs.line.dim1</td><td label="" hideforuser="false" type="String">fin.trs.line.dim1name</td><td label="" hideforuser="false" type="Value">fin.trs.line.basevaluesigned</td><td label="" hideforuser="false" type="Value">fin.trs.head.startvalue</td><td label="" hideforuser="false" type="Value">fin.trs.head.closevalue</td><td label="" hideforuser="false" type="String">fin.trs.head.status</td><td label="" hideforuser="false" type="String">fin.trs.head.banktype</td></th></browse>

Bij cheques krijg ik dezelfde foutmelding

itgentfr091:
Server was unable to process request. —> Invalid name character in ‘http://www.twinfield.com/_Unexpected’. (285454).

Dank. Zijn er nog andere tabellen waarbij dit optreedt buiten BankTransactions en Cheques?

Nee, dit zijn de enige twee waarbij dit zich voordoet.

1 like

Ik heb vandaag geprobeerd om onderstaand statement weer te gebruiken. Nu met volledig andere administraties, maar het zelfde probleem blijft zich voordoen. Zodra ik een administratie probeer uit te sluiten via where company_code <> '' dan komt er weer een andere administratie naar voren met dezelfde fout melding. Overigens kan ik deze tabel ook niet gebruiken als ik de OData-link gebruik.

Kan ik dit op een andere manier wellicht binnen halen of is er een oplossing?

select *
from   Twinfield.Twinfield.BankTransactions@tfd

Aangezien het probleem uitsluitend optreedt op deze Twinfield-omgeving en niet op andere zijn er mogelijk specifieke instellingen in Twinfield die deze generieke Twinfield-foutmelding veroorzaken. Helaas biedt deze foutmelding geen houvast wat er echt mis is cq. hoe eventueel de applicatiebeheerder het probleem kan voorkomen.

Een case met nummer 06526908 is ingediend bij Twinfield op basis van het het reproductiescenario.

Zodra hier meer over bekend wordt zal dit topic bijgewerkt worden. Dit kan enkele weken duren.

1 like

Update is dat:

ProcessXmlCompressed is afgeschreven en zal worden verwijderd. De einddatum wordt later aangekondigd.
Gebruik in plaats daarvan ProcessXmlString of ProcessXmlDocument.

Het is nog niet bekend of de foutmelding veroorzaakt wordt door het gecomprimeerd aanleveren van het verzoek; dit wordt nog beoordeeld door Twinfield.

Zou dit te maken kunnen hebben met rol die mijn account heeft in Twinfield? namelijk level 6: Mee kijken?

Dat ligt niet in de lijn der verwachting, maar Twinfield heeft wel andere quirks, dus in geval van twijfel heeft uitproberen zeker zin.

Ik heb het geprobeerd met een aantal andere toegangsrollen, maar ik blijf het zelfde resultaat krijgen. Is er vanuit Twinfield zelf al een update?

Nee, vanuit Twinfield is hier niks over vernomen.