how to dump the records useing dumpspecified

sharkdim

Member
hello dears,

our ERP system is QAD eB2.1 sp3

we want to dump the tr_hist (transaction history table) the record which the domain(tr_domain) is "1203" and the effective date(tr_effdate) is less then 2013.01.01(Jan 01,2013) the index is tr_eff_trnbr like this:

tr_eff_trnbr 3 + tr_domain
+ tr_effdate
+ tr_trnbr

i search the documents,the dumpspecified can do it ,but i don't know how to do it,

so what i will do? I hope someone can help me to do it...

thanks a lot

sharkdim
 

TomBascom

Curmudgeon
PROUTIL DUMPSPECIFIED qualifier
Performs a binary dump of selected records.

Syntax

proutil db-name -C dumpspecified [owner-name.]table-name.field-name
operator1 low-value [ AND operator2 high-value]
directory [-preferidx index-name]
[ -Cipher 6]

Parameters

db-name
Specifies the database where the data being dumped resides. You must completely define the path.

owner-name
Specifies the owner of the table containing the data you want to dump. You must specify an owner name unless the table’s name is unique within the database, or the table is owned by PUB. By default, ABL tables are owned by PUB.

table-name
Specifies the name of the table containing the data you want to dump.

field-name
Specifies the name of the index field, or the name of a component field of a compound index, to be used to select the data you want to dump.

operator1
Specifies the first operator in the range: EQ (equals to), GT (greater than), LT (less than), GE (greater than or equal to), or LE (less than or equal to).

low-value
Specifies the first value against which the field-name value will be compared.

AND

Specifies a bracketed range for the binary dump. The first value and operator, combined with the second value and operator, define a subset. You cannot use AND to dump two sets of non-contiguous result.

operator2
Specifies the second operator in the range: LT (less than), or LE (less than or equal to).

high-value
Specifies the first value against which the field-name value will be compared.

directory
Specifies the name of the target directory where the data will be dumped. You must specify a directory.

-preferidx index-name
By default, the DUMPSPECIFIED uses the primary index to sort rows. Specifying a different index with -preferidx orders the rows by the specified index.


-Cipher 6

For an Enterprise database enabled for Transparent Data Encryption, specify -Cipher 6 to encrypt the output of the PROUTIL DUMPSPECIFIED with a password-based encryption cipher (PBE). You are prompted to enter the passphrase for the cipher. You must remember this passphrase; you will be prompted to enter the passphrase when loading the binary dump.

Notes

If a field needs to be compared to a string containing other than alpha characters (including spaces or numbers), single quote the string. For example: ‘John Smith’, ‘11-14-2001’, or ‘25 Main St’.

Dumping the data using a character comparison is case-sensitive.

If specifying a monetary value, do not include the money unit. For example, instead of $5.50, enter 5.5.

If specifying a negative number, escape the minus sign with a backslash (\). For example: proutil testdb -C dumpspecified “PUB.Item.Item-NUM” LT “\-90”.

Dates must be entered as mm-dd-yyyy.

The value entered for field-name must be the name of an index field.

You cannot use DUMPSPECIFIED to dump protected audit data. For more information on auditing and utility security and restrictions, see the “Auditing impact on database utilities” section of OpenEdge Data Management: Database Administration.

When dumping the contents of a table encrypted with Transparent Data Encryption, the output of the binary dump is not encrypted by default. Encrypt the dump file (container security) by specifying -Cipher 6 and entering a passphrase for the PBE cipher. You will be prompted to enter the passphrase when loading the contents of the dump file.
 

sharkdim

Member
i cannot find the way to solve my question

when the index is composed of more than one fields, such as
the table name is tr_hist
the index name :tr_eff_trnbr
built by :tr_domain + tr_effdate + tr_trnbr (3 fileds)

could you give me the example ?
thanks a lot ....
 

TomBascom

Curmudgeon
I believe that only one field may be specified and that field name must be the leading component of the index.

Personally, I've not found dumpspecified to be all that useful. But maybe I'm a curmudgeon or something ;)
 

sharkdim

Member
it's bad news......

the attachment is the df and sample .d file

could you give me a way to separate the records by tr_effdate?
 

Attachments

  • tr_hist.zip
    224.8 KB · Views: 1
Last edited:

TomBascom

Curmudgeon
All of your indexes start with a leading component of tr_domain. So that is the only field that you can use for dumpspecified.

You could add a new index whose leading component is tr_effdate.

Or you could abandon dumpspecified and dump this table using 4GL logic. Something like this:

Code:
output to value( "tr_hist.d." + entry( 1, session:parameter )).
for each tr_hist no-lock
    where tr_domain =  entry( 2, session:parameter )
       and tr_effdate >= date( entry( 3, session:parameter ))
              tr_effdate   < date( entry( 4, session:parameter )):

  export tr_hist.

end.
output close.
 
Top