> Maybe you could give an example of why you would read the Dict for an
upload.

Since one of my free tools has already come up in the discussion :)

For my various versions of IMPORT (including BCI.IMPORT) dictionaries are
used for two reasons:

1. to identify which fields to update in each source, so it can be used like
a regular verb.
2. to handle calculated fields that may also need to be inserted based on
the import data.

Here's the usage for BCI.IMPORT to give an idea:

BCI.IMPORT
----------

BCI.IMPORT by Brian Leach

Import SQL data into Universe.

Syntax
------

BCI.IMPORT [FROM datasoure]
  [AS username][PASS[WORD] password]
  [EXEC statement|{TEXT|SQL} statement]
  [PARAM parameter..]
  [FIRST rows]
UPDATES filename
  [FIELD] fieldname {$n|EXPR expression|@special|'value'}
          [CONV code][{NUMERIC|DATE|TIME}]
          [LIST 'xxx,xxx'][RELATES file][BETWEEN n AND m]
          [PATTERN xxx][operator][REQUIRED]
          [MAP 'code=value[,code=value]']
[UPDATES filename ...]

Operators:
----------

{INSERTFIRST|INSERTLAST|INSERTPOS|INSERTAL|INSERTAR|INSERTDL|INSERTDR|ADD|SU
B}

Expressions:
------------
EXPR[ESSION] 'Expression'

Expression is made up of:
   numbers                  eg 1.23
   operators                eg +
   dictionary names         eg SURNAME
   uV Basic functions       eg FIELD()
   @Variables               eg @UserNo
   import column $n         eg $2

eg. EXPRESSION "TRIM($1:' ':$2:' ':$3)"
    EXPRESSION "$1 * PRICE"
    EXPRESSION "SUM(LINE_TOTAL)"

Specials:
---------
{@USER|@DATE|@TIME|@LOGNAME|@IMPORTFILE|@WHO|@ROW}

Example:

BCI.IMPORT FROM mysource
   AS sa PASSWORD admin
   EXEC 'sp_getData' PARAM 'OPEN'
   UPDATES FILE1
      FIELD @ID $1 NUMERIC
      FIELD DATE @DATE
      FIELD NAME EXPRESSION '$3:" ":$4'
      FIELD CODE $9 LIST 'ACA,ACB,ACC'
   UPDATES FILE2
      FIELD @ID $4
      FIELD ENTRIES $1 INSERTLAST
      FIELD QTY $7 INSERT BETWEEN 0 AND 9999
      FIELD TOTQTY $7 ADD

I write a lot of my utilities to be re-usable in this way, to be used as
verbs.

Brian

-----Original Message-----
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Ross Ferris
Sent: 29 October 2012 07:17
To: U2 Users List
Subject: Re: [U2] UPLOAD not DOWNLOAD

You would use the dictionary item to know WHERE to put the data in U2 ....
which file, attribute etc. .... if you are talking multi-values (or
"deeper") then this could also be driven from the dictionary, which would
provide you with the capability of performing some "mapping" ....

UNLESS ....

you are in the position to dictate the format of the file you are trying to
import (aka "upload"?) into UV.

But, if you wanted to be able to map an arbitrary data source, as suggested
by George, using a dictionary would allow you to achieve the result in a
"point & click" manner --> and depending on the dictionary could also ensure
that you don't "download" incomplete or invalid data into an otherwise
(hopefully) "clean" environment, setup defaults etc

Ross Ferris
Stamina Software
Visage > Better by Design!


-----Original Message-----
From: u2-users-boun...@listserver.u2ug.org
[mailto:u2-users-boun...@listserver.u2ug.org] On Behalf Of Wjhonson
Sent: Saturday, 27 October 2012 11:01 AM
To: u2-users@listserver.u2ug.org
Subject: Re: [U2] UPLOAD not DOWNLOAD


<snip>

I'm confused about your mention of Dict items because I don't see how you
use Dict items for Uploading.  I see how you use them for Downloading.
Maybe you could give an example of why you would read the Dict for an
upload.

 

_______________________________________________
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users


_______________________________________________
U2-Users mailing list
U2-Users@listserver.u2ug.org
http://listserver.u2ug.org/mailman/listinfo/u2-users

Reply via email to