Jacob replied to the topic 'Custom Searches' in the forum. 5 years ago

Unfortunately not. Still a little confused as to what is causing the issues, as it all looks fine.

We have done that in the meantime as a quick and dirty solution. However, we are hoping to provide our users with searches that return different types of results ( such as only Back Orders and certain classifications of items) rather than the user have to make an advanced search for a frequent operation.

Hopefully I am able to get this resolved soon.

Read More...

Jacob replied to the topic 'RESTful API Authorisation' in the forum. 5 years ago

Thank you. I will continue using Basic Authentication for the application at this point.

Read More...

Jacob created a new topic ' Custom Searches' in the forum. 5 years ago

Hello,

There are a few Custom searches that we are trying to set up so that we can change what is shown to our users when they are, for example, searching Customer Orders. In this example we want to show additional information from a related custom table, that is in the join. I have spent some time in the Search Manager and managed to construct a new search from a custom view within the system, and I also managed to get that view to show as on option in Find Customer Order. All the information displays how I would expect it to, however when you click an order, the form opens as a new sales order, rather than Sales Order details. No errors are returned, just the New Sales order form. Is this the correct approach for what I am looking to do? If so, how do I get the search to open a Sales Order Detail form instead of a New Sales Order form?

The following are the two views, the original one used for finding a sales order, and our custom one.

CustomerSalesOrderSearchListView (Original)
SELECT SO.SalesOrderCode,
SO.BillToCode AS CustomerCode,
SO.BillToName AS CustomerName,
SO.ShipToName AS ShipToName,
SO.SalesOrderDate AS [Date],
SO.POCode AS CustomerPO,
SO.SalesRepOrderCode AS Ref2,
WF.Stage,
SO.TotalRate AS Total,
SO.CurrencyCode AS Currency,
SO.IsPrinted,
SO.UserCreated,
SO.Type,
SO.IsProcessed,
SO.IsVoided,
SO.CBNState ,
ISNULL(SO.IsPriority,0) AS [Priority],
W.WarehouseDescription
FROM CustomerSalesOrder SO INNER JOIN
( SELECT SalesOrderCode,
CASE WHEN COUNT(*) > 1 THEN 'Multiple' ELSE MIN(Stage) END AS Stage
FROM CustomerSalesOrderWorkflow
GROUP BY
SalesOrderCode) WF ON SO.SalesOrderCode = WF.SalesOrderCode
INNER JOIN InventoryWarehouse W ON SO.WarehouseCode = W.WarehouseCode
WHERE SO.Type = 'Sales Order' OR SO.Type = 'Back Order'

CustomerSalesOrderSearchListViewSHG_C (Custom)
SELECT
SO.SalesOrderCode,
SO.BillToCode AS CustomerCode,
SO.BillToName AS CustomerName,
SO.ShipToName AS ShipToName,
SO.ShipToCode AS ShipToCode,
SO.SalesOrderDate AS [Date],
SO.POCode AS CustomerPO,
SO.SalesRepOrderCode AS Ref2,
WF.Stage,
SO.TotalRate AS Total,
SO.CurrencyCode AS Currency,
SO.IsPrinted,
SO.UserCreated,
SO.Type,
SO.IsProcessed,
SO.IsVoided,
SO.CBNState ,
SO.WarehouseCode,
ISNULL(SO.IsPriority,0) AS [Priority],
W.WarehouseDescription,
CAST(DIFOT.MPXJobID_C AS INT) AS MPXJobId
FROM CustomerSalesOrder SO INNER JOIN
( SELECT SalesOrderCode,
CASE WHEN COUNT(*) > 1 THEN 'Multiple' ELSE MIN(Stage) END AS Stage
FROM CustomerSalesOrderWorkflow
GROUP BY
SalesOrderCode) WF ON SO.SalesOrderCode = WF.SalesOrderCode
INNER JOIN InventoryWarehouse W ON SO.WarehouseCode = W.WarehouseCode
LEFT JOIN CustomerSalesOrderDIFOT_C DIFOT ON SO.SalesOrderCode = DIFOT.SalesOrderCode_C
WHERE SO.Type = 'Sales Order' OR SO.Type = 'Back Order'
All changes have been made in the client.

The view works perfectly fine, it is just that clicking on a record opens a New Sales order.

The Form it is targeting was SalesOrderForm and the Accessibility Action is CustomerFindOrder.

As far as I understand that should open the form with the details of the record that is selected. I could not find anywhere to set a condition along the lines of "where SalesOrderCode = [clickedSalesOrderCode]"

Read More...

Jacob created a new topic ' RESTful API Authorisation' in the forum. 6 years ago

In regards to using the RESTful APIs in the POS WebService, I am aware that Basic Authentication is suitable, however I was wondering what other Authentication Methods are set up or able to be set up for using the APIs that would be more secure than a base64 encoding, for example Auth0 tokens, etc. Is there some documentation for setting up these authorisation methods?

We are trying to call the API in a web interface and have each company user use their own credentials to call the functions, but do not want to store what is effectively plaintext in a cookie or session just so the application can make consecutive calls without asking for details each time. It would be preferable to store some token in a cookie and use that for consecutive calls in that session.

Read More...

Jacob created a new topic ' POS WebService Authentication' in the forum. 6 years ago

Is there any other Authentication method, besides Basic Authentication, for using the APIs provided with the POS Web Service.

I am writing a web interface that allows users to perform a few simple tasks through the APIs. Rather than storing their password in a cookie to use, or ask them for a password for every action they wish to perform, we would like to use a token-based authentication and store that token in a cookie for half an hour, using the token each time the user tries to do something that involves the API in that time.

If I am able to set up a token-based authentication within the Web Service, how would I do that?

Thank you.

Read More...