Sections in this article
- K3S Hosted Applications
- Components Of K3S Application
- 1. Site-to-site Tunnel Connection For Users
- 2. Data Exchange Via SFTP
- 3. Initial Setup Files / Lists
- 4. Development Of Main K3S Interface Files from ERP with File Standards
- 5. Shell Files With Sample Data & Notes File Download
- 6. Define Processes And Schedule
- 7. PO Approval Process
- 8. Additional Files, Configurations, and Post Processing
K3S Hosted Applications
K3S hosts all its applications in its own secure private cloud servers. This spans two data centers located in separate in different national power grids to give the most secure and fault-tolerant setup available for inventory management applications.
Components Of K3S Application
K3S has strict data standards for all its applications. While K3S applications themselves are very flexible in what kinds of data they can consume and what abilities they allow, the transmission of data itself must adhere to our standards listed below. There are eight main components for consideration to integrate to a K3S Application:
1. Site-to-site Tunnel Connection For Users
K3S will be utilizing site-to-site VPN tunnels with port limited access for all connections to our applications. All access for your company will come through this tunnel and no individual user access to login to our VPN is allowed. There is no public facing access to any K3S application. This gives greater security to our application and allows your company to control access to what user has access to your K3S application.
There will be two end points for all site-to-site tunnel connections setup: Production and Disaster Recovery.
K3S will work with your IT director to setup these connections.
2. Data Exchange Via SFTP
K3S requires all customers to exchange data via SFTP. Customers can provide their own secure SFTP server (provided it follows the standards below) or utilize our service at k3s.files.com.
K3S requires chrooted individual accounts with 4 folders based off the chroot:
- /diverter
- /interface
- /pos
- /temporary
The /diverter folder is used for exchanging diverter offerings files if this function is used by your environment.
The /interface folder is used for exchanging the night interface files (K_READY.csv, K_INTPROD.csv, etc).
The /pos folder is used for exchanging PO files and the PO cross reference (K_POXREF.csv).
The /temporary folder is available for future testing and development needs where applicable.
If K3S is providing the SFTP service, the user and password will be provided. If the customer is utilizing their own SFTP service, there will be a strict username that K3S must use to access. This will be provided in technical calls.
3. Initial Setup Files / Lists
There are three initial setup files / lists that will be used for the database: a list of Users, Buyer Groups, and Locations. These lists can be emailed to K3S for manual entry, or developed into a CSV file for easy import. K3S uses the pipe delimiter “|” in all CSV files. The format for the files is shown below:
List Of Users
- User ID - 10 characters
- User name - 25 characters
- Default Buyer Group - 5 characters (typically buyer #)
- Location ID - 5 characters
- Manager - 1 character (has authority to change any information in K3S)
Example:
User ID User name Buy Group Location Manager (1=Yes, 0=No)
KING3 King Harrison 01 01 0
JOHNS John Smith 02 01 1
MARYJ Mary Jones (Candy) 03 01 0
SAM Sam Fredrick SAMFR ATL 0
List Of Buyer Groups
- Buy Grouper - 5 characters (typically buyer #s or department #s)
- Description - 35 characters (typically user’s name or department description)
- User ID - 10 characters
Example:
Buy group Description User ID
01 King Harrison KING3
02 John Smith JOHNS
03 Mary Jones (candy) MARYJ
04 Mary Jones (toys) MARYJ
SAMFR Sam Fredrick SAM
List Of Locations
- Location ID - 5 characters
- Description - 40 characters
- Region ID - 5 character
Example:
Location ID Description Region
01 Charlotte, NC SOUTH
ATL Atlanta, GA SOUTH
BUF Buffalo, NY NORTH
4. Development Of Main K3S Interface Files from ERP with File Standards
K3S will work with your IT staff to help create the files needed for importing.
Below are the five main night interface files required to create a K3S standard application integration. Additional files will be included to provide configurations for your environment as necessary.
Files should follow the file standards outlined below.
- K_INTSUPL - Supplier Interface File
- K_INTPROD - Product Interface File
- K_INTDALY - Interface For Daily Demand Feed
- K_PRODLTM - Product Lead Time Transactions
- K_READY - Creation Of Main Interface Files Complete
File Standards
- Files will include a header record in all files, even the K_READY file.
-
Files will be CSV files with a pipe “ ” delimiter. - File names will be the name of the file with a .csv extension, K_INTPROD.csv; i.e. do not append date or time to the file name.
- All date fields will use *ISO format, YYYY-MM-DD
- Empty dates should be sent as ‘0001-01-01’
- Night interface files (K_READY.csv, K_INTPROD.csv, K_PRODLTM.csv, K_INTSUPL.csv, K_INTDALY.csv, etc) will not be removed once they are used by K3S. The customer will overwrite the file on the exchange site when they have a fresh file.
- Night interface files can be built 7 days/week, but at a minimum must be developed on a cadence that follows your ERP end of day schedule (5 days/week, 6 days/week, etc)
- The K_READY file is always the last night interface file transmitted to the exchange site to signal the successful transmission of all the other files.
- PO files (PO8500021.csv, PO8500022.csv, etc) should be removed by the customer from the exchange site once they are consumed by the customer.
- The PO cross reference file (K_POXREF.csv) will not be removed once used by K3S. The customer will overwrite the file on the exchange site when they have a fresh file.
- The PO cross reference file (K_POXREF.csv) should accumulate records throughout the day for all POs placed that day. After building the night interface files, the customer will clear the K_POXEREF.csv file.
- Diverter files will be removed from the exchange site by K3S once they are consumed.
5. Shell Files With Sample Data & Notes File Download
Here is a zip of the four main files in Excel format with sample data that can act as a shell for setting up your data. Note that the format is in Excel for ease of use, but must be exported to pipe delimited “|” CSV:
Here is a zip of an Excel file we have formatted to easily take notes on the fields while working with K3S to map each field from our files to your files. This is not used for integration other than your reference:
If your company runs on an IBMi server, these sample commands below can help for importing and exporting data.
/*** Sample to copy from IFS stream file into Physical File ***/
CPYFRMIMPF FROMSTMF('/k3sfolder/k3sfile.csv') +
TOFILE(&K3SLIB/&K3SFILE) MBROPT(*REPLACE) +
RCDDLM(*ALL) STRDLM(*NONE) FLDDLM('|') +
FROMRCD(2) RPLNULLVAL(*FLDDFT)
/*** Sample to copy from Physical file into IFS stream file ***/
CPYTOIMPF FROMFILE(&K3SLIB/&K3SFILE) +
TOSTMF(&K3SIFSPATH) MBROPT(*REPLACE) +
STMFCCSID(*PCASCII) RCDDLM(*CRLF) +
STRDLM(*NONE) RMVBLANK(*TRAILING) +
FLDDLM('|') ADDCOLNAM(*SYS)
6. Define Processes And Schedule
To deliver the data for processing a schedule must be set of when K3S can pick up the data. K3S will want to know when your company’s End Of Day (EOD) job is done processing to determine a reasonable time to pickup data.
For Example: If the EOD process normally ends ~3:20am, K3S will suggest going to pick up the formatted files at 4am to ensure they are available, even if the EOD process runs long. The verification that the file processing is complete is the K_READY file described above is created with today’s date. It is imperative that this file is created last and only upon successful creation of the other files.
7. PO Approval Process
K3S has a standard template for POs with an extensive list of available fields. This allows us to configure to any number of ERPs. From our generated suggested orders within our system, when the user clicks ‘Approve Order’ a PO file with a K3S PO Number will be created and sent via the same transfer process for the interface files. From there the customer’s ERP will consume the created PO (usually on a timed polling interval of ~5 minutes). If the K3S PO Number is not the designated PO Number to be used within an ERP, after consumption and adjustment, the ERP will send back a cross-reference file of the ERP PO Number and the K3S PO Number. K3S will then (again on a timed polling interval of ~5 minutes) update the PO within our system to have the corresponding desired PO Number. Each day we would expect the customer to clear our or delete the K_POXREF. Clearing this file as the last step before K_READY creation tends to work best.
NOTE For proper metrics to match with the ERP, K3S requires a PO Number to match the final ERP PO number.
8. Additional Files, Configurations, and Post Processing
K3S is able to import and configure additional files into its Night Job process to add additional functionality or to automatically setup functions built into the system (ex: automatically setup deals or hold outs). We are also able to take additional data for presentation on the Your Space and Your Screen sections.
Examples of Additional K3S Interface Files:
- K_INTDEAL - Interface For Deals
- K_INTHOLD - Interface For Hold Outs
- K_INTSDIS - Interface For Supplier Discount Bracket Levels
- K_INTPLVL - Interface For Product Bracket Cost Levels
- K_INTCASE - Interface For Case Accumulation
The rules for developing the data in these files vary per account.
Files should follow the File Standards outlined above (CSV file, pipe delimited, include a header, etc).
K3S also has the ability to do post processing business specific rules on data that we ship back to your ERP. An example is that in ReStore often the results from the Night Job are directly sent back to the ERP for use. We are able to apply business rules to this data before it is sent back and consumed.
Because of the way Replenish and ReStore were developed they are very flexible applications to suit most needs for inventory management and procurement. Discuss these additional options with a K3S Engineer to learn what is possible.