What is the Dropbox?

The dropbox is the standard method for data providers to automatically deliver files created outside of SAP as feeds into MITs SAP R/3 environments. Data providers must be registered with the dropbox. These providers FTP data files to the dropbox. Based on a combination of file naming conventions and registered dropbox userids, the files are automatically delivered to the appropriate MIT SAP R/3 environment.

Dropbox Files

For each feed, two files are delivered to the ftp drop box, the data file and the control file. The data file contains the data to be processed into MIT's SAP R/3 implementation. The control file consists of a single-record file whose purpose is to signal that the data file has been successfully and completely delivered. This control file is intended to detect situations where the data file may have been only partially transmitted for some reason (say, a communications failure). Therefore, the data file should always be transmitted first, and the control transmitted only after you know that the data has been sussessfully (and completely) transmitted.

The control file is a single-record file which contains control information in the standard format described below.

In situations where it would be extremely difficult to fulfill this preferred control file convention, alternative arrangements can be negotiated. In such cases delivery of control totals by an alternative mechanism would be imperative and encryption of the data file (see below) would become even more significant.

Control File Format

Standard Control record fields

component

length

format

description

byte count

16

char

number of bytes in the transmitted data file

record count

16

char

number of records in the final data file

control 1

20

char

First control total (normally, the credit total)

control 2

20

char

Second control total (normally, the debit total)

control 3

20

char

Third control total summarizing the data file

control 4

20

char

Fourth control total summarizing the data file

The values in each of these six fields should be right-aligned numeric digits with leading zeros. No dollar signs, commas, or decimal points should be inserted. If a credit total is used, it should be in control field 1. If a debit total is used, it should be in control field 2. When the control totals are totals of monetary amounts, they should include cents (but without an explicit decimal point). The control file is required to be a minimum of 73 characters long (that is, a control file must contain at least the two count fields, the first two control fields, and a new-line character).

Encrypting Files

The dropbox expects data files to be encrypted by PGP.

Normally, public-key cryptography is used, but arrangements can be made to use conventional cryptography instead, if required. PGP's "ASCII-ARMORED" mechanism is strongly preferred, so that the file can be FTPed using FTP's text mode. However, if necessary, it might be possible to make arrangements to FTP PGP binary encrypted files. The data file should be encrypted with a MIT-supplied public key and signed with the data provider's private key. The data file should be encrypted as a text file and encoded with PGP's "ASCII-ARMORED" mechanism. The control file must not be encrypted. Files which decrypt properly will have been validated for completeness and accuracy as well as having a confirmation that they were provided by the organization they claim to have come from.

Please note that when the data file is encrypted, the byte count (stated in the control file) is of the encrypted (ciphertext) data file as it appears on MIT's SAP-DROPBOX system (a Unix system that uses a single end-of-line character to separate lines) and the record count (stated in the control file) is of the decrypted (plaintext) data file. If you transmit an ASCII file from a non-Unix system, you must use FTP's text mode. In this case, if your system doesn't use any character to separate lines, or uses a two or more character sequence to separate lines, then you will have to adjust the byte count from the byte count of the encrypted data file on your system. If your system also uses a single end-of-line character (for example, a UNIX or a Macintosh system), then the byte count should not need any adjustment. If your system uses a pair of characters for end-of-line (for example, a Windows system), then you would adjust the byte count by taking the byte count of the encrypted file on your system and subtracting the number of lines in the encrypted file. If your system doesn't use any end-of-line characters (for example, VM/CMS), then you would adjust the byte count by taking the byte count of the encrypted file on your system and adding the number of lines in the encrypted file.

File Naming Conventions

File names on the SAP-DROPBOX machine should be lower case, if possible. The names of the two files (the data file and the control file) must be identical except for the first character, which distinguishes between the two files. Note that the one-record control file is never encrypted, but since its file name must be identical to the file name of the data file (except that the first letter is a "c" instead of a "d"), it must end with ".pgp" or ".asc" extension if the data file has such an extention.

If the data file is sent as a PGP binary encrypted file, the extension ".pgp" should be added to the file names after the date&time stamp and if the data file is sent as a PGP ASCII-armored encrypted file, the extension ".asc" should be added to the file names after the date&time stamp.

Both the data and control file must carry the same date&time stamp. The date&time stamp may represent the time that the file was prepared or the time it was FTPed to the SAP-DROPBOX, but we strongly prefer that it represent the period to which the contents of the data file applies. If there is no relevance to the time of day, it may be "000000".

File Name Components

data file:

doooovvv.sss.CCYYMMDDHHMMSS.asc

control file:

coooovvv.sss.CCYYMMDDHHMMSS.asc

 

 

 

 

component

length

description

d or c

flag

1

d for the data file, c for control file

oooo

Provider

4

identifies organization which provided files

vvv

Feed

3

identifies MIT process the files are intended for

.

delimiter

1

period character used as a delimiter

sss

Seq#

3

distinguishes iterations of a particular feed from a particular organization

.

delimiter

1

period character used as a delimiter

CC

Century

2

cc (currently 20, until recently it was 19)

YY

Year

2

yy

MM

Month

2

mm (01 - 12)

DD

Day

2

dd (01 - 31)

HH

Hour

2

hh (00 - 23)

MM

Minute

2

mm (00 - 59)

SS

Second

2

ss (00 - 59)

optional extention

The following extention is present only if the data file is encrypted.

.

delimiter

1

period character used as a delimiter

asc

extention

3

asc (if the data file is PGP encrypted and ASCII-ARMORED)

Sequence number

Each pair of (data + control) files must have a sequence number exactly one greater than the sequence number of the immediately previous pair of (data + control) files of the same feed type from the same data provider.

The sequence number is a three-digit right-aligned number with leading zeros. The value immediately following "999" is "000". There is a separate series of sequence numbers for each combination of data provider and feed.

Examples of Provider Codes

Provider codes will generally be suggested by the organization they represent, provided that the requested code is available. The following are provided as possible examples.

Provider Code

Description

bao1

MIT Benefits Accounting Office

bud_

MIT OFPM/Budget Office

cash

MIT Cashiers Office

ctrl

MIT CAO/Control Office

libs

MIT Libraries

stud

MIT Student Systems

gift

MIT Gift systems

odep

Office Depot

amex

American Express

medi

Medical

Examples of Feed Codes

Feed Codes will generally be specified by the MIT feed implementors. The following are provided as possible examples.

Feed Code

Description

gld

Historical GL Detail feed

glt

General Ledger transaction feed

stk

Classic GL stack feed

ere

Requisitions feed

dap

DAPOs feed

ard

Accounts Receivable Departmental feed

csh

Cashiers feed

FTPing to the Dropbox

Ftp Site

The host name to ftp to is sap-dropbox.mit.edu .

File Destination

The user name & password to use for the ftp session depends on the identity of the data provider and the purpose and destination of the feed.

R/3 Environment

Purpose

User

Password

SF2 (dev2)

development test

.......2

xxxxxxxxxx

SF5 (tst1)

test QA

.......t

xxxxxxxxxx

PS1 (prod)

production

.......p

xxxxxxxxxx

Getting Set Up

Contact the MIT Financial System Services Technical Services Team at Tech-Services

When (or shortly after) the Bridges Team sets up a set of Dropbox Accounts, they will need some information from you. Please be prepared to provide:

  • How long will you want us to retain the input files on the Dropbox and SAP machines?
  • Contact Information: Who should they contact in case of a technical difficulty with your incoming file or in case of a scheduled outage of the Dropbox function?
    • Name
    • Telephone number
    • E-Mail address

Dropbox File Retention

As you may know, the dropbox is the mechanism used to move files from non-SAP systems into (and out of) SAP. The method of doing this usually includes ftp'ing a file to the drop box machine, which in turn, moves that file to the target system (either PS1, SF2, or SF5). Since these files are archived after they are copied to the correct environment, as well as archived on the environment itself, we are using a lot of disk space. By default, the retention of the files will be as follows:

Dropbox:

Files received on the drop box for prod (PS1) will be retained for 7 days in the archive directory.

Files received on the drop box for tst1 (SF5) will be retained for 7 days in the archive directory.

Files received on the drop box for dev2 (SF2) will be retained for 7 days in the archive directory.

SAP:

Files in the archive directory will be retained for 60 days.

Files in the sapin, sapout, and saptmp directories will be retained for 60 days.

These files should be considered unrecoverable after this time. This file purging will be implemented for ALL systems that use the dropbox, even the ones that are either manually cleaned up or cleanup themselves (i.e. use the same filename, or delete old files), unless other arrangements are made.

If you know of a reason to keep these files around longer (or shorter) than the above, please let fss-infra@mit.edu know and we can set up retention cycles individually for that system.

Note: If you would like to keep files to meet general auditing requirements, we can copy the files into SAP Archive Server. Please answer the following questions and let fss-infra@mit.edu know.

  1. Who (MIT Kerberos ID) can access the SAP Archive Serve? .
  2. Which files to be moved to SAP Archive Server - Control file, Encryped file or Decryped file (any combinations)?

Retention for testing:

There are 2 ways that this can be accomplished. First the file can be retained and maintained outside of the SAP/Dropbox environment. By doing this the entire end to end process can be tested each time, by ftp'ing the file to the appropriate testing drop box. I think this is the best way, but if you do not want to maintain the file yourself, the other option is to provide me with the test file(s) and I will put the files in a holding area (one directory level up from the dropbox), and these files can be moved into the dropbox directory with a mail message to fss-infra.

If there are files that absolutely need to be kept around in the SAP environment (i.e. sapin or saptmp), then please send me the file names and I will be sure that the files are excluded from the automatic purge process.

  • No labels