RFX

From RPOWERWiki

Jump to: navigation, search

RFX (RPOWER File Exchange) is used to transfer QuickBooks, RPOWER Report Database, daily Zip, and other files over the Internet from "stores" (clients) to a "corporate" (server) office. While one corporate office could host QuickBooks and another Reports, two offices could not host QuickBooks, for example. Also, while it may be possible for the corporate office to be physically present in one of the stores, the server does not use the store's F:\RPOWER directory.

Contents

Setting Up RFX.ini at the Store

The store needs both an RFX.ini and a DATACNX.ini in RPOWER's WINRUN\INI folder.

We need DATACNX.ini to identify the background RPOWER computer (usually the file server) used to process the ClientIn responses from QuickBooks and the Reports Database systems.

Standard "Active" Store RFX.ini

[Setup]
Server=FILESVR ; background RPOWER
ServerKey=12345678
API=DATACNX,HOST=rpower.dyndns.org:32150,CG=XXXX ; XXXX is SQL reports CG
API=ZIPBACK,HOST=rpower.dyndns.org:32150
API=QBCNX,HOST=192.168.1.134:32113,CG=YYYY ; YYYY is Quickbooks CG

Also, for ZIPBACK, see EMAIL.INI.

Sample Store DATACNX.ini

The store needs DATACNX.ini in RPOWER\WINRUN\INI to handle replies from the server. In this case, we say it's FILESVR.

[Setup]
Server=FILESVR
ExportTICKET_SALES=1
ExportTICKET_ITEM=1
ExportAllTC=0
;; Uncomment line below to send data real-time
; IntradayMinutes=5

Additional Store RFX.ini Settings

You can add ,ARCHIVE=x to the end of an API line to specify how many (x) days to keep files in both ClientOut and ClientIn ARCHIVE subfolders. The default is three days.

At the store, RFX will connect to the server within three seconds if there are any files to send. Otherwise, it only connects every 13 minutes or so to see if there are any files for it to receive from the server. You can add MaxMinutes=n on a separate line to specify the maximum number (n) of minutes to wait before "slow polling."

"Passive" Store with Port Forwarding

This file will allow active servers (in this case the QBCNX server) to connect to the store instead of the other way around, while at the same time connecting outbound for DATACNX and ZIPBACK.

[Setup]
Server=FILESVR:32150 ; port 32150 must be forwarded to this computer
ServerTarget=1       ; without this, RPOWER just ignores whatever port you specify
ServerKey=12345678
; this is a "passive" connection FROM the server
API=QBCNX,CG=YYYY
; these are "active" outbound connections TO the server
API=DATACNX,HOST=rpower.dyndns.org:32150,CG=XXXX
API=ZIPBACK,HOST=rpower.dyndns.org:32150

How RFX Works

RFX trasfers data from a ClientOut directory on the client computer to a ServerIn directory on the server, and sends data back to the client from a ServerOut directory on the server to a ClientIn directory on the client. Each application., or API, has its own set of ClientIn and ClientOut folders on the client, and ServerIn and ServerOut folders on the server. QBCNX is the API name for the QuickBooks file transfer and DATACNX is the API name for the SQL reporting database. RFX also allows you to make your own API names to transfer files for other purposes.

RFX Directory Structures

On each side of the transfer, there is a single folder called the RFX Root Folder.

At the corporate office, this folder is

C:\RPOWER.Central\RFX

where C: represents the main data drive for the server in question. RFX.exe will reside in this directory.

In a store, the RFX root folder is F:\RPOWER\EXPORTS. There is no RFX.exe at the store — RPOWER has RFX built in to it. An online server (background RPOWER) is set up to take care of the RFX file transfer duties and handle responses from the QuickBooks and Reports Database host systems (per DATACNX.ini).

Underneath the RFX Root folder is a folder for each API name. Underneath the API folder are ClientIn and ClientOut on the client and ServerIn and ServerOut on the server.

Stores send data from their ClientOut folders to the central computer ServerIn folders, and get responses back into their ClientIn folders from the server ServerOut folders.

For example, a corporate office might look like:

C:\
|
+--RPOWER.Central
   |
   +--RFX
   |  |
   |  +--INI
   |  |
   |  +--DATACNX
   |  |  |
   |  |  +--ServerIn
   |  |  +--ServerOut
   |  |
   |  +--QBCNX
   |     |
   |     +--ServerIn
   |     +--ServerOut
   |
   +--RPOWER.Gift
   |  |
   |  +--Inetpub
   |
   +--RPOWER.Reports
      |
      +--Inetpub

As mentioned, C:\RPOWER.Central\RFX is the RFX root. An RPOWER running at a store would typically look like:

F:\
|
+--RPOWER
   |
   +--EXPORTS
   |  |
   |  +--DATACNX
   |  |  |
   |  |  +--ClientIn
   |  |  +--ClientOut
   |  |
   |  +--QBCNX
   |     |
   |     +--ClientIn
   |     +--ClientOut
   |
   +--DATA
   |
   +--WINRUN

Here F:\RPOWER\EXPORTS is the RFX root.

Installing RFX

The RFX executable and initial .ini files are included with both the RPOWER Database Importer and QuickBooks Importer installation files.

Corporate Server Setup

The Corporate Server is a computer hosting a RPOWER QuickBooks importer and/or a RPOWER Reports Database importer.

For this example, a restaurant group named La Famiglia Restaurant Corp. owns and operates Donato's Italian Sports Bar and Sushi, Ma Ferino's, and Fat D's Pasta Kitchen.

Sample Corporate Standalone RFX.ini

Create a file named RFXServer.ini in C:\RPOWER.Gift\RFX\INI, or C:\RPOWER.Central\RFX\INI as appropriate. If using the SampleCorporateRFX.ini that is installed by the importer, be sure to rename it to RFXServer.ini. Also be sure that Windows in not hiding file extensions. You will want to change the Location line and adjust the API lines for the API's this RFX is handling.

[Setup]
Server=1.1.1.1:32113 ; standalone RFX -- 32113 is the "standalone" RFX port
ServerKey=12345678
Location=HQServer,Name=K3 Scottsdale
API=DATACNX,CG=1,Archive=14,ArchiveOut=3
API=QBCNX,Archive=2

In the example above, the Server setting of 1.1.1.1 is a "dummy" setting which indicates this is a standalone RFX installation, meaning there is no RPOWER associated with it. On the store side, this will be the name of the fileserver.

On the Location line, the Location setting is assigned a unique identifier for this installation. The Name setting is just an alternate name for this installation. When communicating with version 10 stores, the Location setting was important because the stores would use that name to do an IP lookup. When communicating with version 11 stores, it is no longer important what these are set to because the IP address of the server is placed directly in the RFX.ini file at the store.

Below the Location line go the API lines. They care composed of an API name, and a couple optional attributes:

  • CG=the consolidation group allowed to be transferred by this RFX
  • Archive=the number of days to keep files in the ServerIn\Archive directory
  • ArchiveOut=the number of days to keep files in the ServerOut\Archive directory

"Active" Server RFX.ini

An RFX can "troll" its clients (stores) if ports are forwarded into them.

; Note that API=, ID= can be removed
TROLL=API=QBCNX,ID=1234,Host=SITE.1234:32150,Interval=1

Connecting for the First Time

Once the standalone RFX has been set up on the corporate server, start it up by double-clicking the RFX.exe file in the C:\RPOWER.Central\RFX directory. A DOS console window should appear showing you that RFX is ready to accept connections.

Use radmin to dial into the store and set up the store's RFX.ini and setup both its RFX.ini and DATACNX.ini files. You also need to alter the RPOWER.ini file so that the RPOWER on the computer handling RFX (the RFX workstation)is an online server (by setting OnlineServer=1). Upon restart, this will start up a background RPOWER service which will handle the RFX connections.

Once that is done, restart RPOWER on the RFX workstation. In the corporate server/standalone RFX DOS console window, you should see the name and serial number of the store you are connecting. If you check the store's RFX.ini file, you should see that the corporate server registered itself.

Views
Personal tools