Profile

Pedro Debevere

User info

First name Pedro
Last name Debevere

DevOps Program

Acquired rank
Enabler
Points progress
Number of DevOps Professional Points
8074 DevOps Points
Here are a few tips to level up your DevOps game and unlock an arsenal of perks and benefits.
DevOps attestation Request your attestation ID and expiry date

Achievements

Questions asked

Sorry! No question found.

Answers given

Hi, you can now use the following NuGet package which is public: Skyline.DataMiner.Core.DataMinerSystem.Automation. For more information, see the following blog post: Unlimited DevOps power at your fingertips...

View Question
16 Votes Selected

The API documentation for creating dmprotocol packages can be found here: https://docs.dataminer.services/develop/api/types/Skyline.AppInstaller.AppPackageProtocol.AppPackageProtocolBuilder.html We still...

View Question
10 Votes Selected edited answer

Hi Esteban, the validator error you are seeing is probably because you are using NuGet packages in your driver but the MinimumRequiredVersion tag has not been set to at least 10.0.10.0 - 9454. Setting...

View Question
10 Votes Selected

Hi Youssef, DIS does not support Visual Studio for Mac (see also https://docs.dataminer.services/develop/TOOLS/DIS/Installing_and_configuring/Prerequisites.html). Also note that Microsoft will retire...

View Question
8 Votes Selected

Hi Alex When using the class library, all code used from the class library is part of a QAction that gets generated by DIS (typically QAction 63000). There is a setting in DIS where you can configure...

View Question
8 Votes Selected

In the project file, you'll have to disable both nullable and implicit usings. QActions use C# 7.3 but these features are not supported in that language version. (the reason that these configurations are...

View Question
7 Votes Selected

In DataMiner 10.3.8, a fix was done so that the ProtocolScripts\DllImport folder will also be synced when an Agent joins the cluster (see this release note). Like Tom mentions, you'll need to put the...

View Question
7 Votes Selected

Hi Thomas, The following example shows how to set a property: https://docs.dataminer.services/develop/devguide/ClassLibrary/ClassLibraryExamples.html#setting-a-property-and-renaming-the-element

View Question
7 Votes Selected

If I remember correctly, multiple connectors that had to work with Excel spreadsheets make use of the OpenXml SDK: https://www.nuget.org/packages/DocumentFormat.OpenXml https://learn.microsoft.com/en-us/office/open-xml/open-xml-sdk...

View Question
7 Votes Selected

Hi Juho, This is by design: When using packages.config, the "packages" folder in the solution indeed contains subdirectories containing both the name and version of the NuGet package. However, the global...

View Question
7 Votes Selected

Hi Nathan, DataMiner will check if the request value contains "://" and if so, it assumes that the ip/hostname and port are provided. If not, it will add the ip/hostname and port of the corresponding...

View Question
7 Votes Selected

The DMSClass is part of the Interop.SLDms assembly and is deprecated for use in connectors. Instead, you can use the class library NuGet. An example of how to rename an element can be found here: https://docs.dataminer.services/develop/devguide/ClassLibrary/ClassLibraryExamples.html#setting-a-property-and-renaming-the-element

View Question
5 Votes Selected

Hi Geovanny, Could it be that the Default Processor Architecture has been set to X64? (If this is set to X64, it generates the BadImageFormatException you mention.) In Visual Studio 2017, from the menu...

View Question
5 Votes Selected

In case you would like to hide elements programmatically, you could use the class library included in DIS. For example: using Skyline.DataMiner.Automation; using Skyline.DataMiner.Library.Automation;...

View Question
5 Votes Selected

Hi Sylvain, If you create a protocol solution using a recent version of DIS, all you have to do is add a reference to the  Skyline.DataMiner.Core.DataMinerSystem.Protocol NuGet package (this package...

View Question
4 Votes Selected

Wildcards are indeed not supported., your suggested approach using a QAction to perform the matching is therefore a good approach.

View Question
4 Votes Selected

Hi Miguel, In your Automation script solution, you'll probably need to update the version of the Skyline.DataMiner.Dev.Automation to a more recent version than the one that is installed by default (by...

View Question
4 Votes Selected

Hi Simon, you'll probably need to run VS as administrator. When opening the DIS macro tool window, it tries to copy the macros to a folder but if you don't have sufficient rights it will throw an exception...

View Question
4 Votes Selected

Hi Mieke, I'm afraid this approach will not work due to the way the data forwarding works between SLPort and SLProtocol. Refer to Data forwarding for more details. To summarize, for a smart-serial connection...

View Question
4 Votes Selected

Hi Michiel, DataMiner compiles QActions using the latest version of the .NET Framework that is installed on the agent (it detects this via the registry). As of DataMiner 10.1.11, .NET Framework 4.8 is...

View Question
3 Votes Selected

Hi Robin, this currently is not supported due to an issue in the QActionTable class of the helper code. We have a task in our backlog to fix this 185850.

View Question
3 Votes Selected

Hi, the following question/answer provides some pointers on how to do read an Excel sheet: https://community.dataminer.services/question/reading-writing-to-an-excel-file-in-net/answer/105057/

View Question
3 Votes Selected

Hi Alex, The implementation in DataMiner is different from a regular console application. This is because by default there is a single SLScripting process to execute the QAction code and therefore binding...

View Question
3 Votes Selected

Hi, below an example of a task that is created using this method: var dms = new Dms(communication); var dma = dms.GetAgent(Settings.TestElementAgentId); var scheduler = dma.Scheduler; DateTime startDate...

View Question
3 Votes Selected

Hi John, the Session@timeout attribute configures the timeout for a request in this session and overrides the Timeout of a single command (ms) in the element edit wizard (under More TCP/IP settings for...

View Question
3 Votes Selected

The GetRawConstantValue method will try to retrieve the value from the Constant metadata table of the assembly. When using static readonly, there will be no entry in that table and therefore throw an InvalidOperationException...

View Question
3 Votes Selected

The documentation states "array of strings". The example uses single quotes, did you try with double quotes?

View Question
3 Votes Selected

Hi, The import protocol functionality in DIS is rather limited: Importing a driver will only import the protocol XML file. After importing the XML file, you can open a QAction which will result in the...

View Question
2 Votes Selected

Hi Joshua, I think there is currently no other way to do it other than using the notify call you mention. The class library indeed currently has no such functionality.

View Question
2 Votes Selected

Hi Thomas, when a protocol is uploaded, the SLDMS process will check the value of the dllImport attribute of the QAction elements in the protocol and verify if it needs to sync the assemblies between...

View Question
2 Votes Selected

Hi Elmaza, The connector throws this exception because it uses the GetTypes method to obtain information about the loaded assemblies in the application domain. The documentation of this method states...

View Question
2 Votes Selected

Hi, when calling the GetTasks method, the class library performs an SLNet call behind the scenes which retrieves info about the scheduled tasks. However, SLNet does not set the mentioned properties and...

View Question
2 Votes Selected

Hi Sebastián, The entry point of QAction 16200 is defined in the Engine namespace. DataMiner currently does not support the entry point of a QAction to be defined in a namespace other than the default...

View Question
2 Votes Selected

Hi Thijs, The notion of the DllImport subfolder has only been introduced with RN26605 (DataMiner version 10.0.10). With this RN, the ProtocolScripts\DllImport (in addition to the Files and ProtocolScripts)...

View Question
2 Votes Selected

Hi Gabriel, The Confluent Kafka API exposes a Load method: Loads the native librdkafka library from the specified path (note: the specified path needs to include the filename). Does nothing if the library...

View Question
2 Votes Selected

Hi Thijs, serial (and smart-serial) are currently not yet supported. We have the following tasks to implement this: CLP - iDms Include Serial PortInfo CLP - IDms Include Smart Serial PortInfo

View Question
2 Votes Selected

Hi Jorge, It's currently not possible to specify that an element should not go into timeout for specific status codes using only protocol XML. There is however a task already to have this supported, task...

View Question
2 Votes Selected

Hi Maxim The message you see originates from the SLElement process: When trying to create an alarm/information event, it checks whether the parameter is known in SLElement. In your case, you most likely...

View Question
2 Votes Selected

Hi Alex, this exception was the result of a stage using the DCP API which was unable to connect to DCP. IT looked into this and it should now be fixed.

View Question
2 Votes Selected

Hi Maxim, this is currently not supported. If desired, you can create a task for this feature.

View Question
2 Votes Selected

The ping attribute can be used to allow testing the connection in the element edit wizard in DataMiner Cube. This is explained in the following section in the DataMiner Development Library

View Question
2 Votes Selected

The Parameter class only provides entries for parameters of type "read" or "write" (entries of the latter type are found under the Parameter.Write class). For all other types, the QAction_Helper code...

View Question
2 Votes

Hi Andy, as YANG-API is a RESTful protocol (https://tools.ietf.org/id/draft-bierman-netconf-yang-api-01.html), it should be possible to integrate with DataMiner.

View Question
2 Votes

Hi Meekaeel, This check basically does the following: It iterates over all parameters in the protocol and keeps track of the page name mentioned in the Position/Page (regular pages and page button page...

View Question

Hi Stephen, As Davor pointed out, this can occur when the DIS extension is installed on a Visual Studio version that is outdated. Updating Visual Studio to the latest version (17.11.5) should resolve...

View Question
1 Vote

Hi, The project templates are provided by a template NuGet package which gets installed or updated at Visual Studio startup if configured to do so. Can you verify in the DIS settings window, under the...

View Question
1 Vote

Hi Gerwin, Below some clarification about the different NuGet packages: The skyline.dataminer.dev.* NuGet packages refer to skyline.dataminer.files.* NuGet packages which contain DataMiner assemblies....

View Question
1 Vote

After investigation, this is a combination of factors. First, the NuGet 'A' that was referenced in the Automation script had a dependency on another NuGet package 'X'. However, another version of NuGet...

View Question
1 Vote Selected

Hi Philip, This is a good suggestion. Currently, the CI/CD pipeline creates a .dmprotocol package (which is the same package as the one that becomes available on the catalog) that will only include the...

View Question
1 Vote Selected

Hi Maxim Moq is a constrained framework, customizing the implementation of an extension method is not possible. Like Jens suggests, to do what you are after, you'd need to use an unconstrained framework...

View Question
1 Vote Selected

There are also extension methods defined on IDmsElement to monitor e.g; name changes and alarm level changes see ElementMonitorExtenions. var element = myDms.GetElement("myElement"); element.StartNameMonitor(protocol,...

View Question
1 Vote Selected

Hi Pedro, Does the Output window provide some details? (View > Output, then select DIS from the dropwown) Another thing you could try is close Visual Studio, remove the msalcache.bin file from the...

View Question
0 Votes

Hi Ahmed, When DIS creates a protocol solution, it starts out with a solution with three C# projects: QAction_1: This is a QAction that has the precompile option. QAction_2: This is a QAction that...

View Question
0 Votes

Hi João, can you take an export of the element you're trying to duplicaate and send the resulting dmimport package to support.data-acquisition@skyline.be (together with the full stack trace) so we can...

View Question
0 Votes

Hi Milos, Data acquisition will schedule a ticket to further investigate and understand what is going wrong as initial investigation did not reveal the issue. When we have more information, we will reach...

View Question
0 Votes Selected

Hi, I see that different versions of this NuGet package (AWSSDK.MediaPackageV2) use the same assembly version for the AWSSDK.MediaPackageV2.dll assembly: v 3.3.0.0. I suspect that on the Agent where...

View Question
0 Votes Selected

Hi Andries, You probably defined a type Skyline.IAC.Endpoints.Resources.EndpointHealth in both protocols. The type info that is passed along in the serialized message includes the assembly in which this...

View Question
0 Votes