Discussions

Ask a Question

PUT /api/ItemPrice/{ItemPriceId} results in error

If I do a get call on the endpoint I receive the following. ```json json { "$type": "Asi.Soa.Commerce.DataContracts.ItemPriceData, Asi.Contracts", "ItemPriceId": "CHAPEV75/REG:Standard:00000000-0000-0000-0000-000000000000:USD", "Item": { "$type": "Asi.Soa.Commerce.DataContracts.ItemSummaryData, Asi.Contracts", "ItemId": "CHAPEV75/REG" }, "PriceSheet": { "$type": "Asi.Soa.Commerce.DataContracts.PriceSheetSummaryData, Asi.Contracts", "Description": "", "Name": "", "PriceSheetId": "Standard" }, "Currency": { "$type": "Asi.Soa.Core.DataContracts.CurrencyData, Asi.Contracts", "CurrencyCode": "USD", "DecimalPositions": 2 }, "SalesUom": { "$type": "Asi.Soa.Commerce.DataContracts.UomSummaryData, Asi.Contracts", "UomId": "00000000-0000-0000-0000-000000000000", "Name": "", "Description": "" }, "DefaultPrice": { "$type": "Asi.Soa.Core.DataContracts.MonetaryAmountData, Asi.Contracts", "Amount": 99.0000, "Currency": { "$type": "Asi.Soa.Core.DataContracts.CurrencyData, Asi.Contracts", "CurrencyCode": "USD", "DecimalPositions": 2 } }, "IncomeAccount": { "$type": "Asi.Soa.Commerce.DataContracts.FinancialAccountData, Asi.Contracts", "GLAccount": { "$type": "Asi.Soa.Commerce.DataContracts.GLAccountData, Asi.Contracts", "GLAccountCode": "" } }, "SpecialPriceRules": { "$type": "Asi.Soa.Commerce.DataContracts.SpecialPriceRuleDataCollection, Asi.Contracts", "$values": [ { "$type": "Asi.Soa.Commerce.DataContracts.SpecialPriceRuleData, Asi.Contracts", "SpecialPriceRuleId": "NM:EarlyFee", "Name": "NM:EarlyFee", "Description": "Non-Member", "EndDate": "0001-01-01T00:00:00", "Amount": { "$type": "Asi.Soa.Core.DataContracts.MonetaryAmountData, Asi.Contracts", "Currency": { "$type": "Asi.Soa.Core.DataContracts.CurrencyData, Asi.Contracts", "CurrencyCode": "USD", "DecimalPositions": 2 } } }, { "$type": "Asi.Soa.Commerce.DataContracts.SpecialPriceRuleData, Asi.Contracts", "SpecialPriceRuleId": "NM:LateFee", "Name": "NM:LateFee", "Description": "Non-Member", "EndDate": "0001-01-01T00:00:00", "Amount": { "$type": "Asi.Soa.Core.DataContracts.MonetaryAmountData, Asi.Contracts", "Currency": { "$type": "Asi.Soa.Core.DataContracts.CurrencyData, Asi.Contracts", "CurrencyCode": "USD", "DecimalPositions": 2 } } }, { "$type": "Asi.Soa.Commerce.DataContracts.Pricing.LegacyPriceRuleData, Asi.Contracts", "RuleCustomerType": "NM" } ] } } ``` When I copy the result to the body, update the call to a PUT, change the default price amount, add the ItemPriceId at the end of the url reguardless if it is url encoded I get a 500 error.

Adding some text to a Page Content containing a Single Sign-On iPart

Hi, We are trying to add some text on a page content containing a Single Sign-On iPart (the one where you select a client application for a SSO connection). Since the redirection takes 10-15 seconds to process, we would like to add a text like "Please wait while we redirect you". Adding a Content Html to the page doesn't work, it seems that this content get ignored or erased when we are browsing the page and the redirection is being processed. Does someone have an idea on how to make it work? We are still on version 20.2.66.1330. Thanks.

iMIS Power BI Integration

Hi, Is it possible to integrate iMIS with PowerBi. So that PowerBi reports and dashboards can be made from live iMIS data. If yes, how difficult is it to setup. Kind regards, Jim

Convert a large list of dropdown values for a general lookup table into iMIS

How can we convert a large list of dropdown values for a general lookup table into iMIS instead of manually entering them in iMIS?

Member Engagement Director

How do I give a temporary password in IMIS. Give me the steps

Adding a simple React application as a custom ipart

I'm having trouble adding a custom ipart using React into imis. I've followed the documentation for at <https://developer.imis.com/docs/developing-a-client-based-ipart> as well as looked at this post <https://developer.imis.com/discuss/60496efdc703ae0064f710b1>. After I've created the React app, I ran the "npm run build command". Zipped the created build folder and uploaded the document to iMIS into the document system in RiSE under the created iPartSource folder. I've then created a new content type folder called "Custom" I've created a .env file and added: PUBLIC_URL: "~/iPartSource/build.zip" and added 'homepage: "\*"' to package.json But when I add the custom iPart to a page it displays this : ![](https://files.readme.io/30ffc98-2023-08-02_16-17-45.png) Any help is greatly appreciated. Thanks, William

ItemPrice API not working

Pulled the get request from the documentation and ran on our test site and it's not returning the list of item Prices const options = {method: 'GET', headers: {accept: 'application/json'}}; fetch('<https://yourorgsite.com/api/ItemPrice'>, options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err)); instead I get an error response `{ "$type": "Asi.Soa.Core.DataContracts.ValidationResultsData, Asi.Contracts", "Errors": { "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts", "$values": [ { "$type": "Asi.Soa.Core.DataContracts.ValidationResultData, Asi.Contracts", "Message": "Criteria must contain at least one that tests ItemId for equality." } ] }, "Warnings": { "$type": "Asi.Soa.Core.DataContracts.ValidationResultDataCollection, Asi.Contracts", "$values": \[] } }` I was just trying to get the JSON response to see what was wrong with my POST request JSON object as it's giving me 400 error.

Secret switch to make 1.0.1 REST API return normal JSON

I remember one of the ASI developers telling us about a header you could include when making a request of the .../IQA endpoint which would cause it to return the output in "normal" JSON format. Much like the difference in output between the .../IQA and .../Query endpoints in 20.3, discussed at <https://developer.imis.com/docs/migrating-from-iqa-to-query-service-endpoint>. I've scoured my notes and this site, and can't find it anymore. Does anyone recall? Desired output snippet: ``` { "$type": "System.Dynamic.ExpandoObject, System.Core", "Name": "Aaron Ketterling", "PrimaryOrganizationName": "Bureau of Meteorology - South Australia", "Title": "" } ``` Default output snippet: ``` { "$type": "Asi.Soa.Core.DataContracts.GenericEntityData, Asi.Contracts", "EntityTypeName": "59", "Properties": { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyDataCollection, Asi.Contracts", "$values": [ { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "ResultRow", "Value": "6" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "Name", "Value": "Aaron Ketterling" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "PrimaryOrganizationName", "Value": "Bureau of Meteorology - South Australia" }, { "$type": "Asi.Soa.Core.DataContracts.GenericPropertyData, Asi.Contracts", "Name": "Title", "Value": "" } ] } } ```

Finance - Batch exporting

We are currently exporting batches by batch into MYOB using a macro to convert the file. I am inclined to change this to "export by detail" (each journal entry (debit and credit) line will be exported and organized by date, Financial entity, and then by overall journal entry in the order the transactions were processed in iMIS. The greatest amount of information is returned using this option.) Could anyone please share their experience with this option and the pros and cons of exporting in detail? Could anyone please share their experience with changing over from exporting by batch to exporting by detail? Were there any problems encountered with converting via the macro for MYOB? ie did a new macro need to be created? Thank you

REST API: System.Data.ObjectNotFoundException: Item to be saved not found in identity map

Hi - this is iMIS 2017 (20.2.66.1330). I have a business object called TestFreightRate composed of all the columns of the Freight_Rate table except for timestamp. If I try to update a record in the REST API, I'm getting a 500 Internal Server Error response. I'm doing a PUT to this API path: /api/TestFreightRate/~UPS-Ground|1|002 See attached screenshots of the business object, API GET request, API PUT request, and the error message from the event viewer on the web server. Here's the stack trace: ``` System.Data.ObjectNotFoundException: Item to be saved not found in identity map. at Asi.Soa.Core.Domain.PersistenceStrategyBase.RetrieveIdentityItem(IdentityData identityData) at Asi.Soa.Core.Persistence.BusinessPersistenceStrategyBase.SaveChanged(Object entityInstance) at Asi.Soa.Core.Domain.Repository.PersistChanged(Object entityInstance) at Asi.Soa.Core.Domain.UnitOfWork.Persist() at Asi.Soa.Core.Domain.UnitOfWork.Commit() at Asi.Services.Core.EntityServiceToCommonServiceAdapter1.Update(TDataContract dataContract) at Asi.Services.Core.EntityServiceToCommonServiceAdapter1.Update(Object dataContract) at Castle.Proxies.Invocations.ICommonService_Update.InvokeMethodOnTarget() at Castle.DynamicProxy.AbstractInvocation.Proceed() at Asi.Shared.Aspects.CacheAspect.Intercept(IInvocation invocation) in C:\\Builds\\208\\ScrumV3\\sp137_Main10\\Sources\\MainFoundation\\imis.net\\Packages\\Platform\\Asi.Shared\\Aspects\\CacheAspect.cs:line 62 at Castle.DynamicProxy.AbstractInvocation.Proceed() at Asi.Services.Core.Interceptors.CommonSecurityAspect.Intercept(IInvocation invocation) at Castle.DynamicProxy.AbstractInvocation.Proceed() at Asi.Services.Core.Interceptors.ServiceTaskTriggerInterceptor.Intercept(IInvocation invocation) at Castle.DynamicProxy.AbstractInvocation.Proceed() at Asi.Shared.Aspects.PerformanceAspect.Intercept(IInvocation invocation) in C:\\Builds\\208\\ScrumV3\\sp137_Main10\\Sources\\MainFoundation\\imis.net\\Packages\\Platform\\Asi.Shared\\Aspects\\PerformanceAspect.cs:line 55 at Castle.DynamicProxy.AbstractInvocation.Proceed() at Castle.Proxies.ICommonService\\1Proxy_2.Update(Object dataContract) at Asi.Scheduler.Controllers.CommonServiceController.Put(String entityName, String entityId, Object entity) ``` I realize it's possible to update the record using the api/Freight_Rate endpoint, but due to an idiosyncrasy of our iDMS product, it'd be better if we could update a business object wrapping the Freight_Rate table. Thanks