Itgenboe024: Unknown table ‘VismaNet.CustomerInvoice.CustomerInvoiceLineAttachments@vnt’

I am getting this error message when trying to refresh my Power BI reports today

OLE DB or ODBC error: Exception from HRESULT: 0x80040E4E. An unexpected exception occurred.
Additional details:
DataSource.Error: OData: Request failed: The remote server returned an error: (500) Internal Server Error.

Looking at the status page I dodnt see any downtime issues that might explain this. Any ideas? Any issues going on today that might explain this?

There are currently no known issues.

Is it possible to add a (anonymized) screenshot of the request details in Invantive Bridge Online Monitoring as described in More insight with new Bridge Online Monitoring?

Details can be found by clicking on the download request which represents the issue discussed in this topic.

Please leave at least the following data visible:

  • the title bar with the request ID,
  • the status code, network size and times in the left column,
  • the error code and error message at the very bottom of the left column,
  • the entire right column.

Path: https://bridge-online.cloud/acme-visma-net-financials-1/odata4/VismaNet.CustomerInvoice.CustomerInvoiceLineAttachments@vnt

Request ID0HN6GIFRGR6SG:00000007 (HTTP/1.1)
Message Code: itgenboe024
Exception: Unknown table ‘VismaNet.CustomerInvoice.CustomerInvoiceLineAttachments@vnt’. Possible valid alternatives: VismaNet.Views.FinancialPeriodStatistics, VismaNet.ServiceStatus.ServiceStatus, VismaNet.Event.Events

Everything worked fine friday afternoon when I refreshed. Then this morning I am getting this error message

An analist studied the problem, since the Swagger/OpenAPI-driver below Visma.net was changed to allow addition of GitHub. The problem however could not be reproduced on the current release.

As a last resort your cache has been emptied (equivalent to “Reset Cache” in the top-right menu).

Please try again whether this solves your error.

Thanks for your support.
I tried again, but still the same error message. However I now asked my colleague to refresh the same report and it worked without issue.
So somehow the problem seems to be specific to my PC. I will continue to investigate.

I am really at loss here. Cant access the data, and cant even see the same tables as before. All my other PBI tables loads fine, its only an issue with invantive cloud odata feed.

Can could we do a (paid if necessary) support teams call? Trying to close the books, so its rather urgent.

It is always possible to reserve a consultant. Please use the chatbot at bottom right. After entering your email address, specify that you already use software from Invantive, then choose “I want to plan a short consult”.

In between time, an analyst has been assigned to double verify the issue.

The cause was found to be that Visma.net API servers provided between approximately September 7 and September 11 a different Swagger metadata-specification that was automatically picked up. Although a correct metadata-specification, it missed a lot of APIs leading to tables being gone.

On approximately September 11, Visma.net reverted the Swagger metadata-specification and replaced it by the (logical next) version 10.17.02.1004.

History was (approximately):

Date Version Size (bytes)
August 28 05:00 10.15.01.1001 2050531
September 4 12:54 (Wednesday) 10.16.01.1001 2050805
September 7 05:00 (Saturday) 2.0 6822
September 11 09:53 (Tuesday) 10.17.02.1004 2050805

The problem was resolved for the user by clicking on “Reset cache” in the top-right menu in Invantive Bridge Online.

Contents Weird 2.0 Swagger specification

The weird 2.0 Swagger specification listed on the fixed URL seems to be another API specification for Visma.net targeting partners that want to register new subscriptions.

As said before, the Visma.net team corrected the deployment within a few days. It was probably an automatic deployment during the weekend running havoc, similar to the CrowdStrike deployment issue.

Some Visma.net users on Invantive Cloud might still be affected by the issue due to caching so all copies have been purged safetywise to force a reload.

{
   "swagger":"2.0",
   "info":{
      "version":"2.0",
      "title":"Visma.net API"
   },
   "basePath":"/API",
   "schemes":[
      "https"
   ],
   "paths":{
      "/resources/v1/event":{
         "get":{
            "tags":[
               "Event"
            ],
            "summary":"Get all events",
            "description":"Lists the events from Visma.net for which users can subscribe.",
            "operationId":"getAllEvents",
            "produces":[
               "application/json"
            ],
            "parameters":[
               
            ],
            "responses":{
               "200":{
                  "description":"successful operation",
                  "schema":{
                     "type":"array",
                     "items":{
                        "$ref":"#/definitions/EventDto"
                     }
                  }
               }
            }
         }
      },
      "/resources/v1/subscription":{
         "get":{
            "tags":[
               "Subscription"
            ],
            "summary":"Get all subscriptions made by the current user",
            "description":"",
            "operationId":"getAllSubscriptions",
            "produces":[
               "application/json"
            ],
            "parameters":[
               
            ],
            "responses":{
               "200":{
                  "description":"Success",
                  "schema":{
                     "type":"array",
                     "items":{
                        "$ref":"#/definitions/SubscriptionDto"
                     }
                  }
               },
               "default":{
                  "description":"successful operation"
               }
            },
            "security":[
               {
                  "oauth2":[
                     "vismanet_erp_interactive_api:read"
                  ]
               }
            ]
         },
         "post":{
            "tags":[
               "Subscription"
            ],
            "summary":"Create a new subscription for the current user",
            "description":"",
            "operationId":"createSubscription",
            "consumes":[
               "application/json"
            ],
            "produces":[
               "application/json"
            ],
            "parameters":[
               {
                  "in":"body",
                  "name":"subscription",
                  "required":true,
                  "schema":{
                     "$ref":"#/definitions/SubscriptionDto"
                  }
               }
            ],
            "responses":{
               "201":{
                  "description":"Success",
                  "headers":{
                     "Location":{
                        "description":"URL of the new Subscription.",
                        "type":"string"
                     }
                  },
                  "schema":{
                     "$ref":"#/definitions/SubscriptionDto"
                  }
               },
               "default":{
                  "description":"successful operation"
               }
            },
            "security":[
               {
                  "oauth2":[
                     "vismanet_erp_interactive_api:create"
                  ]
               }
            ]
         }
      },
      "/resources/v1/subscription/{id}":{
         "get":{
            "tags":[
               "Subscription"
            ],
            "operationId":"findSubscriptionById",
            "summary":"Get a specific subscription",
            "description":"",
            "produces":[
               "application/json"
            ],
            "parameters":[
               {
                  "name":"id",
                  "in":"path",
                  "required":true,
                  "type":"integer",
                  "format":"int64"
               }
            ],
            "responses":{
               "200":{
                  "description":"Success",
                  "schema":{
                     "$ref":"#/definitions/SubscriptionDto"
                  }
               },
               "default":{
                  "description":"successful operation"
               }
            },
            "security":[
               {
                  "oauth2":[
                     "vismanet_erp_interactive_api:read"
                  ]
               }
            ]
         },
         "put":{
            "tags":[
               "Subscription"
            ],
            "operationId":"updateSubscription",
            "summary":"Update a specific subscription",
            "description":"",
            "consumes":[
               "application/json"
            ],
            "produces":[
               "application/json"
            ],
            "parameters":[
               {
                  "name":"id",
                  "in":"path",
                  "required":true,
                  "type":"integer",
                  "format":"int64"
               },
               {
                  "in":"body",
                  "name":"subscription",
                  "required":true,
                  "schema":{
                     "$ref":"#/definitions/SubscriptionDto"
                  }
               }
            ],
            "responses":{
               "204":{
                  "description":"Success"
               },
               "default":{
                  "description":"successful operation"
               }
            },
            "security":[
               {
                  "oauth2":[
                     "vismanet_erp_interactive_api:update"
                  ]
               }
            ]
         },
         "delete":{
            "tags":[
               "Subscription"
            ],
            "summary":"Delete a specific subscription",
            "description":"",
            "operationId":"deleteSubscription",
            "produces":[
               "application/json"
            ],
            "parameters":[
               {
                  "name":"id",
                  "in":"path",
                  "required":true,
                  "type":"integer",
                  "format":"int64"
               }
            ],
            "responses":{
               "204":{
                  "description":"Success"
               },
               "default":{
                  "description":"successful operation"
               }
            },
            "security":[
               {
                  "oauth2":[
                     "vismanet_erp_interactive_api:delete"
                  ]
               }
            ]
         }
      },
      "/resources/v1/serviceStatus":{
         "get":{
            "tags":[
               "ServiceStatus"
            ],
            "operationId":"allServiceStatus",
            "summary":"Get the list of all available services",
            "description":"",
            "produces":[
               "application/json"
            ],
            "responses":{
               "200":{
                  "description":"successful operation",
                  "schema":{
                     "type":"array",
                     "items":{
                        "$ref":"#/definitions/StatusPageComponentDto"
                     }
                  }
               }
            }
         }
      },
      "/resources/v1/notification/{notificationId}":{
         "get":{
            "tags":[
               "Notification"
            ],
            "summary":"Get notification details by notification ID.",
            "description":"",
            "operationId":"getNotificationInfo",
            "produces":[
               "application/json"
            ],
            "parameters":[
               {
                  "name":"notificationId",
                  "in":"path",
                  "required":true,
                  "type":"string"
               }
            ],
            "responses":{
               "200":{
                  "description":"successful operation",
                  "schema":{
                     "$ref":"#/definitions/NotificationReceivedDto"
                  }
               }
            }
         }
      },
      "/resources/v1/notification":{
         "get":{
            "tags":[
               "Notification"
            ],
            "summary":"Get notifications filtered by event type and/or date.",
            "description":"",
            "operationId":"findByNotificationDateOrEventType",
            "produces":[
               "application/json"
            ],
            "parameters":[
               {
                  "name":"eventType",
                  "in":"query",
                  "required":false,
                  "type":"string"
               },
               {
                  "name":"dateFrom",
                  "in":"query",
                  "required":false,
                  "type":"string",
                  "format":"date-time",
                  "description":"Use format: YYYY-MM-DD HH:mm:ss"
               },
               {
                  "name":"dateTo",
                  "in":"query",
                  "required":false,
                  "type":"string",
                  "format":"date-time",
                  "description":"Use format: YYYY-MM-DD HH:mm:ss"
               },
               {
                  "name":"pageNumber",
                  "in":"query",
                  "required":false,
                  "type":"integer"
               },
               {
                  "name":"pageSize",
                  "in":"query",
                  "required":false,
                  "type":"integer"
               }
            ],
            "responses":{
               "200":{
                  "description":"successful operation",
                  "schema":{
                     "$ref":"#/definitions/NotificationDto"
                  }
               }
            },
            "security":[
               {
                  "oauth2":[
                     "vismanet_erp_interactive_api:read"
                  ]
               }
            ]
         }
      },
      "/resources/v1/notification/failed":{
         "get":{
            "tags":[
               "Notification"
            ],
            "summary":"Get failed notifications filtered by event type and/or date.",
            "description":"",
            "operationId":"getRetryNotificationList",
            "produces":[
               "application/json"
            ],
            "parameters":[
               {
                  "name":"eventType",
                  "in":"query",
                  "required":true,
                  "type":"string"
               },
               {
                  "name":"dateFrom",
                  "in":"query",
                  "required":false,
                  "type":"string",
                  "format":"date-time",
                  "description":"Use format: YYYY-MM-DD HH:mm:ss"
               },
               {
                  "name":"dateTo",
                  "in":"query",
                  "required":false,
                  "type":"string",
                  "format":"date-time",
                  "description":"Use format: YYYY-MM-DD HH:mm:ss"
               },
               {
                  "name":"pageNumber",
                  "in":"query",
                  "required":false,
                  "type":"integer"
               },
               {
                  "name":"pageSize",
                  "in":"query",
                  "required":false,
                  "type":"integer"
               }
            ],
            "responses":{
               "200":{
                  "description":"successful operation",
                  "schema":{
                     "$ref":"#/definitions/NotificationDto"
                  }
               }
            },
            "security":[
               {
                  "oauth2":[
                     "vismanet_erp_interactive_api:read"
                  ]
               }
            ]
         }
      }
   },
   "definitions":{
      "EventDto":{
         "type":"object",
         "required":[
            "eventType",
            "name"
         ],
         "properties":{
            "eventType":{
               "type":"string"
            },
            "name":{
               "type":"string"
            },
            "description":{
               "type":"string"
            }
         }
      },
      "SubscriptionDto":{
         "type":"object",
         "required":[
            "event",
            "hookUri"
         ],
         "properties":{
            "id":{
               "type":"integer",
               "format":"int64",
               "description":"The identifier of a subscription. Will be populated only on successful POST operation"
            },
            "event":{
               "type":"string",
               "description":"The event type for which the subscription is made"
            },
            "hookUri":{
               "type":"string",
               "description":"The URL where notifications will be sent"
            }
         }
      },
      "StatusPageComponentDto":{
         "type":"object",
         "properties":{
            "status":{
               "type":"string"
            },
            "name":{
               "type":"string"
            },
            "created_at":{
               "type":"string"
            },
            "updated_at":{
               "type":"string"
            },
            "position":{
               "type":"integer",
               "format":"int64"
            },
            "description":{
               "type":"string"
            },
            "showcase":{
               "type":"boolean"
            },
            "id":{
               "type":"string"
            },
            "page_id":{
               "type":"string"
            },
            "group_id":{
               "type":"string"
            }
         }
      },
      "NotificationReceivedDto":{
         "type":"object",
         "properties":{
            "entityId":{
               "type":"string"
            },
            "notificationId":{
               "type":"string"
            },
            "source":{
               "type":"string"
            },
            "status":{
               "type":"string"
            }
         }
      },
      "NotificationDto":{
         "type":"object",
         "properties":{
            "contextId":{
               "type":"string"
            },
            "eventId":{
               "type":"string"
            },
            "action":{
               "type":"string"
            },
            "resourceUri":{
               "type":"string"
            }
         }
      }
   }
}

Dit topic is 3 dagen na het laatste antwoord automatisch gesloten. Nieuwe antwoorden zijn niet meer toegestaan.