Updated: August 31, 2020 12:14pm

V8ToPrism.exe tool

[Disclaimer: This tool is scheduled for release with Prism 1.14.7]
Introduction

The V8ToPrism.exe tool helps current Retail Pro 8 users migrate to Prism. The V8ToPrism.exe tool exports V8 data in .csv format. After data is exported, use the Prism Export/Import Resources tool to import the .csv files.
This topic explains how to:

  • Configure the V8ToPrism.exe tool
  • Export data from V8
  • Import data into Prism
  • Review log files

Launching the V8ToPrism.exe Tool
Launch the tool on the machine where the Retail Pro 8 Main station is located. The tool can be found in the Prism setup files (Install files or upgrade files) in the \PrismTools\V8ToPrism folder.
When you launch the tool, the main screen has fields for entering or browsing to the path of your Retail Pro 8 data and history files. Data files contain the records of inventory, customers, stores, etc. History files contain receipts, vouchers and other documents. By default, V8 data and history files are stored in the …\Retail\RPro folder.
V8 to Prism tool main screen
 On the bottom of the V8ToPrism.exe user interface is a set of buttons for navigating the tool. Refer to the following table for information about the buttons.

Button Description
About Displays version information for the tool.
Prism Define Prism-related settings and read Data from Prism.
Preferences Define formatting options for things like Price Levels, Subsidiary and Store. Define options for mapping Store Address fields.
Process When you click Process, the .csv files are generated.
Exit Exit the V8ToPrism.exe program.

Configuration
Run the V8ToPrism.exe tool at the V8 Main station. Before you begin, make sure to complete a full data replication cycle before running the tool. That is, make sure the Main has received and processed in all the receipts and other documents from subsidiaries and stores. In addition, make sure the Retail Pro 8 data and history files as well as the Prism server into which the files will be imported are on the local machine or available via a mapped network drive.
Preferences
Data is exported from V8 according to the preferences defined in the V8ToPrism.ini file. These are the preference settings for the program V8ToPrism.exe. This is a standard Windows .ini file (i.e. a standard text file).
Important! Do not edit the .ini file with Microsoft Word. Microsoft Word will add invisible information that can cause trouble when the program reads the file. Instead, use a standard text editor like Notepad or Notepad++.
1.    Launch the tool on the machine where the Retail Pro 8 Main station is located. The tool can be found in the Prism setup files (Install files or Upgrade Files) in the \PrismTools\V8ToPrism folder.
2.    Browse to the path for the Retail Pro 8 data files and history files. The files can be on the same machine as Prism or on a different machine.
 3.    Click the Preferences button to set:

  • Formatting Options: You can customize the formatting of certain elements that are used to identify price levels, stores and tax areas. Displaying these elements in a format that is familiar to users can help the migration go more smoothly.
  • Store Address mapping: Specify which V8 Store Address field should be mapped to individual Store Address fields in Prism.

Sample V8ToPrism.exe Preferences
V8 to Prism tool preferences When you modify a format, the "Example" area will dynamically update to show how the new formatting will appear.
Example: Format Price Level Name: %0:s-%1:s
The % indicates the start of the formatting instructions. The 0 refers to the first "string" part of the Price Level Name (using zero-based array numbering). The : terminates the first part of the formatting instruction. The s represents the "string" that is displayed. If you remove the s, the Example disappears. The formatting you defined is still there, but without the s it doesn't get displayed. The - is displayed as is, without formatting.

Setting Description
Format Price Level Name Define the format the Price Level Name will be displayed.
Format Store Code Local Define the format the Local Store Code will be displayed.
Format Store Code Global Define the format the Global Store Code will be displayed.
Format Store Name Define the format the Store Name will be displayed.
Format Alt Tax Area Name Define the format the Alternate Tax Area Name will be displayed.
Field Source: Store Name Generated Store Name is the name generated based on the defined "Format Store Name" setting.
Field Source: Addr1 - Addr 6 For each V8 Store Address field listed, select the field to which it should be mapped. Select None if the Store Address field is not used.
ZIP Select which field to map to the Prism Zip field. Select None if the Zip field is not used.
Phone1 to Phone 2 For each V8 phone field, select which Prism field to which it should be mapped. Select None if the phone field is not used.

Sample Get Data From Prism screen:
Get data from prism
4.    Click the Prism button. On the Get Data From Prism screen, define settings for pulling data from Prism. These settings ensure that any differences in the data structures used by RP 8 and Prism can be resolved. You may want to change the Subsidiary No to "1" and clear the Export Subsidiary checkbox.
Why would I change the Subsidiary No and clear the Export Subsidiary checkbox?
In a typical scenario, V8 is being moved to an empty Prism database. By default, Prism has a single Subsidiary, Subsidiary No 1. By changing the Subsidiary No to "1" and clearing the Export Subsidiary checkbox, the tool will prepare the data for export to the Subsidiary 1 that is already created by default in Prism. If you leave the default Subsidiary No of "2" and leave the Export Subsidiary checkbox selected, data will be loaded into a new Sub 2 database in Prism and the default Subs 1 would be empty.
The following table has information about the settings on the Get Prism Data screen:

Setting Description
Prism Db Name Database name. Default = RPSODS
Prism Db Type Select a database type from the dropdown: Oracle or MySQL.
Subsidiary No Subsidiary number.
Subsidiary SID Unique system ID for the subsidiary. Reference to the SUBSIDIARY table.
Subsidiary Name Subsidiary name.
Export Subsidiary The subsidiary from which data was exported.
External Subsidiary SID The Subsidiary SID of the subsidiary from which data was exported.
External Subsidiary Name The Subsidiary Name of the subsidiary from which data was exported.
Controller SID Unique system ID for the controller record. Used to reference the CONTROLLER table
TENANT SID Unique system ID for the tenant record. Used to reference the TENANT table.
Country Code Select a Country code from the dropdown (e.g. UK).
Country SID Unique system ID for the country. Used to reference the COUNTRY table.
Currency Code Select a Currency code from the dropdown (e.g. USD, JPY).
Currency SID Unique system identifier for the currency. Used to reference the CURRENCY table.
Currency Name Currency name (e.g. US Dollar, Japanese Yen).
Season SID Unique system identifier for the currently active Season. Used to reference the SEASON table.
Active Price Level SID Unique system identifier for the currently active price level. Used to reference the PRICE_LVL table.
Active Store SID Unique system identifier for the currently active Store. Used to reference the STORE table

Export Data from V8
1.    On the Prism screen, click Read Lists. This establishes a connection with Prism and reads the list of data records in Prism. Note: The UI does not change during this step.
Read Lists button
2.    On the Prism screen, click Read Data. This will update the UI with information from Prism, Subsidiary No 1.
:
Get Prism Data screen after clicking read data
4.    Click OK to close the Prism data screen.
5.    On the main screen of the tool, click Process. The .csv files are generated and saved to the \Prism folder.
6.    Copy the exported .csv files or compressed file to a location (e.g. the local drive) that can be accessed by the machine that will do the import. The exported .csv files can be imported into an Oracle DB or MySQL DB.

Exported .csv files
When you click the "Process" button, the tool processes Retail Pro 8 data and history files and generates a set of .csv files. Navigate to the V8ToPrism > Out > Save folder. You will see the list of files. These are the files that you will import into a clean Prism database using the Export/Import Resources tool.

History Documents that Reference Deleted Items, Vendors or Departments
In certain situations, the history files exported from V8 may include documents with items that were later deleted from Inventory (e.g. using Clean House). For such a document item to be imported into Prism, an item needs to be added to the Prism database that has this deleted item's item number and UID (unique ID, the V8 SID). In this situation, the V8ToPrism tool will create a basic Inventory item (set to Inactive status) using the item information on the history document. This basic information includes UPC, Description 1 and Description 2. Deleted items that are recreated in this situation will not have ALU, Description 3, or Description 4 information.

Import .csv Files into Prism
The ExportImportResources.exe can be found within the installation (or upgrade) folders. Navigate to the PrismTools\ImportExport folder.
1.    Use the right-click "Run as Administrator" option to launch ExportImportResources.exe
2.    Launch the Export Import Tool and click the RIL to Prism replication CSV tool button.
 Ril to Prism button for Export Import Resources
3.    In the Import File area of the tool, click the ellipses.
Import files

4.    Navigate to the location of the .csv files. Clear the Zip checkbox. Select the files and click Open.
5.    Click Import. In the text box, you will see the data being imported. When the process is finished, click OK. After the import, return to the V8ToPrism.exe tool. Click the Prism button. On the Prism screen, click Finish Prism.

V8ToPrism.ini File
[Note: This section is under construction.]
The V8ToPrism.exe tool transfers data from V8 to Prism according to the instructions in the V8ToPrism.ini file. For example, the V8ToPrism.ini file defines which Prism Address 1 to Address 6 fields various V8 Store information will be transferred. Some of these fields have a UI. You can get to these settings using either the Prism button or the Preference button from the main screen of the program. Use the UI to edit that subset of preferences. The other fields can be edited using a text editor.
This section reviews the information in the V8ToPrism.ini file, section-by-section. Reviewing this information before you configure and use the tool will help to clear up any confusion about the data transfer process.
Note: Blank lines are added to this document to separate out the sections of the .ini file.
First, we will show the full .ini file and then go through it section-by-section and provide extra information where needed.
Sample V8ToPrism.ini file:
[PrismDb]
Db_Name=dbname
Db_Type=0
[Log]
DefaultLevel=0
[System]
PrefNow=0
Text_File_Limit=100000000
DataPath=D:\v870\RPro\
HistoryPath=D:v870\RPro\History
Subsidiary_Export=1
Subsidiary_Number=2
Subsidiary_Name=Sub2
Ws_No=1
[SID]
Subsidiary=56695092709226100
Controller=566826442000003255
Tenant=56682644200158510
Country_Code=USA
Country=5668264730001328992
[Currency]
SID=566826473000160923
Export =0
Code=USD
Name=US Dollar
Decimals=2
Rounding=0
[Season]
SID=566826477000178813
[Active]
Price_Level=566951007100213000
Store=566951006100173001
[Employee]
CustIdPref=99999
[Format]
Price_Lvl_Name=%0:s-%1:s
Store_Code_Local=%0:s-%1:s
Store_Code_Global=Sub-%0:s-%1:s
Store_Name= Sub-%0:s-Store-%1:s
Alt_Tax_Area_Name=%3:s
[Store_Field_Sourcre]
Desc0=0None, 1:Default, 2:Hdr1, 3:Hdr2
Desc1=4:Hdr3, 5:Hdr4, 6:Hdr5, 7:Hdr6
Name=1
Addr1=2
Addr2=3
Addr3=4
Addr4=5
Addr5=6
Zip=7
Phone1=0
Phone2=0
Text09=0
Text10=0
Udf06=0
Udf07=0
Udf08=0
Udf09=0
Udf10=0
Udf11=0
Udf12=0
Udf13=0
Udf14=0
Udf15=0
[Address_Type]
Sid=566950927092261001
Name=Home
[Customer_Field_Source]
Desc0=0:None
Desc1=1:UdfDt1, 2:UdfDt2, 3:Udf3, 4:Udf4, 5:Udf5
Desc2=6:Udf6, 7:Udf7, 8:Udf8, 9:Aux1, 10:Aux2
Desc3=11:Aux8, 12:Aux4, 13:Aux5, 14:Aux6, 15:Aux7
Desc4=16:Aux8, 17:Aux9, 18:Aux10, 19:Aux11, 20:Aux12
[Invoice_Item_Field_Source]
Desc0=0:None
Desc1=1:UdfDt1, 2:UdfStr
Desc2=3:Udf1, 4:Udf2, 5:Udf3, 6:Aux4
Desc3=7:Udf5, 8:Udf6, 9:Udf7, 10:Udf8
Note01=1
Note02=2
Note03=3
Note04=4
Note05=5
Note06=6
Note07=7
Note08=8
Note09=9
Note10=10

V8ToPrism.ini - Section-by-Section
Let's examine the contents of the V8ToPrism.ini file section-by-section.
PrismDB
This section sets the Prism database name and type. For Oracle, the Db_Name is the name entry in the tnsnames.ora file (default=RProODS).
[PrismDb]
Db_Name=dbname
Db_Type=0

Field Description
Db_name The name of the database. Default = RPSODS
Db_Type 0 = Oracle
1 = MySQL

Log
Note: This section is not currently used.
[Log]
DefaultLevel=0

System
This section has general system preferences.
[System]
PrefNow=0
Text_File_Limit=100000000
DataPath=D:\v870\RPro\
HistoryPath=D:v870\RPro\History
Subsidiary_Export=1
Subsidiary_Number=2
Subsidiary_Name=Sub2
Ws_No=1

Field Description
PrefNow The preference now is to override the timestamp it puts on the records. This value is for advanced users and should left at the default of 0.
Text_File_Limit Text_File_Limit is a limit on the size of some of the exported .csv files. The .csv files that are controlled by this parameter will have the name format FileName_#.csv. Examples are Inventory and Document:
Inventory_1.csv
Inventory_2.csv
Document_1.csv
Document_2.csv
Document_3.csv
As the tool is creating the files, if the file size reaches the Text_File_Limit, the tool will close the file and create a new one with the next number. It will then continue to export the data into this new file. It will continue until it has exported all the data. The number of files will be controlled by the total size of the data, and the size limit of the files. If the tool needs to export 100 MB of data and the Text_File_Limit is 1 MB, the tool will export 100 files.
DataPath DataPath is the path to the main data files in V8. This will be where you find files such as Invn.data and Price.dat. This will usually be something like C:\Retail\RPro
HistoryPath HistoryPath is the path to the history files. Examples of files found in this path:
SA201501.dat
RC201806.dat
The HistoryPath is usually C:\Retail\RPro (the same as the DataPath).
Subsidiary_Export Subsidiary_Export controls if the tool will export the subsidiary information. If you are transferring (exporting from V8 and importing into Prism) into an existing subsidiary, you do not want to export subsidiary information. Instead, you will use the information that is already in Prism.
If you are transferring .csv files to a new Subsidiary, you will need to export the subsidiary information so it can be imported into the Prism database.
Subsidiary_Number The number of the subsidiary into which the V8 data is being transferred.
Subsidiary_Name The name of the subsidiary into which the V8 data is being transferred.
Ws_No The V8 workstation from which preferences are pulled. Default=1


SID
The SID section is the collection of SIDs needed to export the data. This is all the SIDs that need to be collected from the Prism system to export the data. The one exception is Currency_SID, which is in the [CURRENCY] section. All the fields in this section are SIDS, except for the Country_Code field (the Country_Code is used to extract the Country_SID from the Prism database).
[SID]
Subsidiary=56695092709226100
Controller=566826442000003255
Tenant=56682644200158510
Country_Code=USA
Country=5668264730001328992

Field Description
Subsidiary Subsidiary SID is the SID of either an existing Subsidiary to which the data is being transferred, or the SID of a new subsidiary to create.
Controller Generated by Prism when Prism is installed.
Tenant Generated by Prism when Prism is installed.
Country_Code The country to be used by Prism
Country The SID corresponding to the Country_Code

Currency
Currency information.
[Currency]
SID=566826473000160923
Export =0
Code=USD
Name=US Dollar
Decimals=2
Rounding=0

Field Description
SID This is the SID for the base currency used by Prism. Export controls whether the currency information is exported to Prism. At this time, Prism contains all the known currencies so no currency should be transferred from V8 to Prism; therefore this field should be set to 0.
Code Code is the currency code as defined by Prism. This is used to look up the currency SID in the Prism database.
Name This is contained in the Prism database and is the actual name Prism uses for the base currency.
Decimals The number of decimals used with the base currency.
Rounding 0 = No rounding used; 1 = Rounding used.

Season
The Season section has the Season SID.
[Season]
SID=566826477000178813

Field Description
SID The SID for the season used by Prism. The tool uses the SID for the ‘None' season.

Active
This section contains the SIDs of the active price level and the active store. The data is collected as the tool exports the data from the V8 database. It will be available after the data has been exported.
[Active]
Price_Level=566951007100213000
Store=566951006100173001

Employee
This section controls the creation of employees. When an employee record is created, it also creates child customer record. This record requires a customer ID.
[Employee]
CustIdPref=99999

Field Description
CustIdPref The customer ID with its prefix. The prefix is added to the beginning of the employee number to create the customer number. An example using the prefix 99999 would be 99999001

Address_Type
The address type section controls the creation of the address type table entry. This will be the entry for all address types used in transferring the data from V8 to Prism.
[Address_Type]
Sid=566950927092261001
Name=Home

Field Description
SID The SID of the address type.
Name The default name is "Home"

Format
Some Prism fields are not available in V8. These fields could be left blank, or they can be generated by the V8-to-Prism tool. To give some flexibility in the generation of these fields, a way has been made to control this process.

  • Static text: e.g. "This is a test." The text will be entered into the field for every relevant record in the database.
  • Substitution fields: These have the format "%#:s" where the number (#) sign is an actual number. Examples are "%0:s" and "%2:s". The # is replaced by data from the V8 database. The field used depends on the table being used to create the data. For example, when exporting the price level table, Field0 is the subsidiary number and Field1 is the price level code, also a number. Let's say data is being exported into Subsidiary 5. The tool is exporting the price level record with a price level code of 9. If you have the format string Sub:%0:s-PrcCd:%1s, the actual field will contain "Sub:5-PrcCd:9"

[Format]
Price_Lvl_Name=%0:s-%1:s
Store_Code_Local=%0:s-%1:s
Store_Code_Global=Sub-%0:s-%1:s
Store_Name= Sub-%0:s-Store-%1:s
Alt_Tax_Area_Name=%3:s

Field Description
Price_Lvl_Name Used when transferring the price level table. Field0 is the Subsidiary number and Field1 is the Price Level Code.
Store_Code_Local Store information. Field0 is for the Subsidiary number and Field1 is for the Store Code.
Store_Code_Global Store information. Field0 is for the Subsidiary number and Field1 is for the Store Code.
Store_Name This field is handled differently than the other fields. This field controls the default store name field if it is chosen by the store field source for store name.
Alt_Tax_Area_Name Alt_Tax_Area_Name is for transferring tax information. Tax code is handled separately. This takes the single v8 TAX_AREA table and creates three Prism tables: TAX_AREA, TAX_RULE and TAX. Field 0 is Subsidiary No, Field 1 is Tax Area Name, Field 2 is Tax Code Number, Field 3 is Tax Code. Alt-Tax_Area_Name is a maximum of 10 characters, so it defaults to field 3.


Store_Field_Source, Inven_Field_Source, Customer_Field_Source, Invoice_Item_Field_Source
There are several sections that control the source of the fields being transferred from V8 to Prism. Some of them have default values. Some of them default to 0, which will make those fields blank in Prism. The reason why this was done was that there are fields in V8 that do not have a direct counterpart in Prism. This allows us to control which V8 field is mapped to a Prism field.
Each type has a set of entries to control where the data is being stored in Prism. For each entry, there is a list of possible v8 source fields from which the data is obtained. Each type is discussed in the following sections.
Note that each section lines that with the label "Desc#". Example, Desc0 or Desc2. These labels are there for information when editing the data. These lines are not used by the tool itself. They help users to know what sources are available while editing the entries.
Store_Field_Source
Store_Field_Soure controls the fields that are transferred while the STORE table is being exported. The entries are labeled with where in Prism the field is.
Name is the store name. Like other Source Control fields, an entry of 0 will make the Prism field blank. A value of 1 in the Name field means the tool will get the entry from the store name formatting field (described earlier).
In the V8 data, the primary use of the store information fields is to print the store information on receipts and reports. The user can put store information in any of the six available Prism store information header fields. For example, the user might put the Street Name in header field 1 and the address (e.g. 123 Main St) in header field 2.
Alternatively, the user might put a message in header field 0, (e.g. "Thank you for shopping with us") and then put the store name in header field 1.
[Store_Field_Source]
Desc0=0None, 1:Default, 2:Hdr1, 3:Hdr2
Desc1=4:Hdr3, 5:Hdr4, 6:Hdr5, 7:Hdr6
Name=1
Addr1=2
Addr2=3
Addr3=4
Addr4=5
Addr5=6
Zip=7
Phone1=0
Phone2=0
Inven_Field_Source
The Inven_Field_Source section is to control the Inventory UDF fields. There are four that are read from the V8 data. These are UDF fields 1 to 4. You can decide where to put these in the Prism data
[Inven_Field_Source]
Desc0=0:None, 1:Udf1, 2:Udf2, 3:Udf3, 4:Udf4
Text01=0
Text02=0
Text03=0
Text04=0
Text05=0
Text06=0
Text07=0
Text08=0
Text09=0
Text10=0
Udf06=0
Udf07=0
Udf08=0
Udf09=0
Udf10=0
Udf11=0
Udf12=0
Udf13=0
Udf14=0
Udf15=0

Customer_Field_Source
For creating the customer table, there are 20 possible source fields. The first two are UDF date field 1 and 2. Next are the rest of the UDF fields, Udf3 to Udf8. These correspond to a value of 3 to 8. Then there are 12 auxiliary fields. The auxiliary fields correspond to values of 9 through 20.
[Customer_Field_Source]
Desc0=0:None
Desc1=1:UdfDt1, 2:UdfDt2, 3:Udf3, 4:Udf4, 5:Udf5
Desc2=6:Udf6, 7:Udf7, 8:Udf8, 9:Aux1, 10:Aux2
Desc3=11:Aux8, 12:Aux4, 13:Aux5, 14:Aux6, 15:Aux7
Desc4=16:Aux8, 17:Aux9, 18:Aux10, 19:Aux11, 20:Aux12
UdfCust1=3
UdfCust2=4
UdfCust3=5
UdfCust4=6
UdfCust5=7
UdfExt06=8
UdfExt07=9
UdfExt08=10
UdfExt09=11
UdfExt10=12
UdfExt11=13
UdfExt12=14
UdfExt13=15
UdfExt14=16
UdfExt15=17
UdfExt16=18
UdfExt17=19
UdfExt18=20
Invoice_Item_Field_Source
There is the invoice item source field control. In Prism, the fields are Note 1 to Note 10. In V8, the fields are UdfDt, which has a value of 1. Then there is UdfStr, which is a value of 2. Finally, there are Udf1 to Udf8. These correspond to values of 3 to 10.
[Invoice_Item_Field_Source]
Desc0=0:None
Desc1=1:UdfDt1, 2:UdfStr
Desc2=3:Udf1, 4:Udf2, 5:Udf3, 6:Aux4
Desc3=7:Udf5, 8:Udf6, 9:Udf7, 10:Udf8
Note01=1
Note02=2
Note03=3
Note04=4
Note05=5
Note06=6
Note07=7
Note08=8
Note09=9
Note10=10