Application Programming Interface forums

0 Aanmeldingen

3 Onderwerpen

22 Gesprekken

Area for questions and answers about SuperOffice API's.

push_pin lock

Auto Title voluptatem facilis

Auto Description alias animi quaerat
Community Test
1
1
26 mrt 2024 | 03:37 a.m.
Onderwerp:
Online development @ web service APIs

Laatste antwoord

tytytytyt ytyty
by Dhanushka Wimaladasa
8 apr 2024 | 07:03 a.m.
push_pin lock

Auto Title beatae voluptatem

Auto Description quam corporis incidunt
Community Test
1
0
25 mrt 2024 | 03:38 a.m.
Onderwerp:
Online development @ web service APIs
push_pin lock

Adding a questio nunder user forums mobile crm to move

user foru mmobile crm forum 
Huzaim Ahamed
0
0
13 mrt 2024 | 01:50 p.m.
Onderwerp:
Online development @ web service APIs
push_pin lock

Adding a question in technical to appear in latest

desc Adding a question in technical to appear in latest 

CC

CommunityTest Customer
0
1
23 jan 2023 | 10:54 a.m.
Onderwerp:
# Service & CRMScript Discussion

Laatste antwoord

add reply 

CC

by CommunityTest Customer
26 jan 2023 | 02:24 p.m.
push_pin lock

Asking a general question on parliamanet

descript of the question 
Huzaim Ahamed
0
1
29 nov 2022 | 02:51 a.m.
Onderwerp:
Online development @ web service APIs

Laatste antwoord

Hi Marc,   Verify that all SymmetricKeys/SymmetricSecrets are the same in all config-files, don't forget the BatchService-files as well. At least the NetServer used for Service needs to have the same encrypted keys as the Service config-file, to be able to communicate correctly. But my best practice is to use tha same for all components, to be sure. In my experience, this is the main source of failing triggers in onsite-environments.   Actually I have written a Powershell-script that collects all SymmetricKeys/SymmetricSecrets from all config-files, based on a custom list of config-files, for easier comparison and verification. But a security feature in the backend of the community-site prevented this source code to be added to a post. So might not be able to share it here, unfortunately. :)   If the solution is using WinAuth, verify that you have added the needed extra config settings in the for all Net Servers, according to the docs, see below.  
by Senuri SāmindiÁ
19 jan 2023 | 06:17 a.m.
push_pin lock

Please accept EventData inputValues with a grain of salt...

It has come to our attention that the EventHandlers (Triggers) for Sales events (such as "After save sale") get a bit too much input data. Specifically, the EventData.inputValues contain also various local temporary variables which were never ment to be exposed. For instance, the value "SaleStageHasChanged", always has the value false  event though the stage actually has changed. This is because this is a private local variable, which should not be part of the EventData.inputValues. We will fix this bug down the road, but the fix will be to filter out (remove) these variables. Consequently, I ask you to not use them in your customizations as they are not stable and will be removed. Which ones are they? Unfortunately, I do not have a complete list for now. So, for simplicity, I believe you should limit your sulutions to using the standard values for properties on the entities, such as "SaleEntity.Amount", etc. The ID is definitely safe, and then you can query the database to get the current value. Sorry for this. We will try to clean up the inputValues, as well as getting some more documentation on this area.
Senuri SāmindiÁ
0
1
23 nov 2022 | 09:56 a.m.
Onderwerp:
# Service & CRMScript Discussion

Laatste antwoord

Ok, thanks for the heads up!
by Senuri SāmindiÁ
23 nov 2022 | 09:56 a.m.
push_pin lock

Announcement: some changes in EventData.getInputValue() and Map

A bug that has been around for ages in Maps in Service/CRMScript is that trying to get a value for a key will actually insert the key it into the Map. We have decided to fix this bug specifically in the EventData class so that calling EventData.getInputValue(String key) or EventData.getStateValue(String key) now will not insert the key. We believe the risk for this breaking any existing customizations is extremely low, but we still wanted to notify you here. If, for some reason, you have something like this, you need to clean it up: EventData ed = getEventData(); if (ed.getInputValue("foo") == "bar") printLine("foo is bar"); if (ed.getInputValues().exists("foo")) printLine("foo exists"); // This used to be true, but will now be false. This change will come in the next release in a couple of weeks. For the Map class, we do not dare to introduce the same change. Map.get(String key) will still have the side effect that the key will be inserted (with an empty value). However, we are introducing a new method, Map.getWithFallback(String key, String fallback). This method will return the value of the key if found, and if the value is not empty. If the key does not exist, or the value of it is empty, the function will return the fallback string. And the key will not be inserted into the Map.
Senuri SāmindiÁ
0
1
23 nov 2022 | 09:54 a.m.
Onderwerp:
# Service & CRMScript Discussion

Laatste antwoord

Nice, the Map.getWithFallback method will be handy!
by Senuri SāmindiÁ
23 nov 2022 | 09:55 a.m.
push_pin lock

'Unrecognized container: Transient' when loading NetServer Core using assembly loadfrom

Hello, I'm having an issue with the latest NetServer core release, when I reference the NuGet package directly and use the following code to bootstrap netserver, it works fine: var services = new ServiceCollection(); services .AddNetServerCore() .AddSoDatabase() .AddSingleton<Microsoft.Extensions.Logging.ILogger, SuperOffice.Logging.SoLogger>() .AddSingleton<SuperOffice.Security.Principal.IContextInitializer, ContextInitializer>(); var provider = services.BuildServiceProvider(true); provider.RegisterWithNetServer(); But when I reference the exact same NetServere Core package (and related packages) in a class library, use the code above to bootstrap netserver, and load it from a different application using Assembly.LoadFrom, I get the following error on the 'RegisterWithNetServer' line   We have all NetServer related code in a seperate class library, which is per SuperOffice version and we load according to the SuperOffice database version we are connected to. (Yes all legacy/technical debt, but can't just rewrite it all to the webapi package) This used to work fine with previous releases of NetServer but now broke with the change in bootstrapping/initilization. Based on other results when searching the forum here, I think it is related to a missing assembly/dll, but when I compare the dll's when referencing the nuget package directly or through our class library setup, they are the same. Does anyone have a few pointers/direction to help debug this?  
Senuri SāmindiÁ
0
1
23 nov 2022 | 09:48 a.m.
Onderwerp:
Client libraries and tools

Laatste antwoord

Thanks a lot for that hint, after implementing the AssemblyResolve event and loading the dependencies from the correct folder it all works great!
by Senuri SāmindiÁ
23 nov 2022 | 09:48 a.m.
push_pin lock

G9 Contact ExtenderExtender: hide some fields for selection criteria or list

Hello, One customer of us is using an ExtenderExtender to display the info from the Contact extra table. Now he would like to hide some fields in the selection criteria and another fields in the contact list. Is this possible with ExtenderExtender? Thank you in advance,
Senuri SāmindiÁ
0
1
23 nov 2022 | 09:47 a.m.
Onderwerp:
Client libraries and tools

Laatste antwoord

Thank you Tony, is exactly what I needed.
by Senuri SāmindiÁ
23 nov 2022 | 09:47 a.m.
push_pin lock

Add or change company / customerdata by importing data form other (inport) file (excel)

From our exicisting data base in Super Office we would like to change / update some customers data, like TAX registation, Chamber of Commerce registration, and credit limit. We prefer not to overwrite the existing data, we only want to update of add missing information in the existing data base whout putting this dat in manualy to avoid incorrect entry. We have the data in Excel format.   What is the best and easiet way to do this?
Senuri SāmindiÁ
0
1
23 nov 2022 | 09:47 a.m.
Onderwerp:
Client libraries and tools

Laatste antwoord

According to how you describe, I would assume that our default " Import " tool could give you the result you are looking for. Some things to take into account: - In order for the import to work in a reliable way, a reliable "unique key" for each company is required. Usually we use the "database contact ID" (a unique reference for a company card in SuperOffice) or the "number/code field". I can imagine that this data is missing in your current Excel. If so, you may need to do an export first and create the logic which is required to do a reliable import. - Depending on your import wishes, you can manage how the import should be applied: "always replace data" or "only fill in empty values". Since you are considering update an active environment with bulk data, I would not recommend "trying out" this feature. Best option would be to get in touch with your account manager first to discuss the topic and probably some consultancy services can help to achieve the result in a reliable and efficient way.
by Senuri SāmindiÁ
23 nov 2022 | 09:47 a.m.