Translate special characters within a fix or expand routine
- Product: Aleph
- Product Version: 22, 23
- Relevant for Installation Type: Dedicated-Direct, Direct, Local, Total Care
Question
How to translate a special characters in a fix or expand routine?
Answer
Use the fix_doc_convtb program which can be added to tab_expand or to tab_fix. Please see the example in attached file.
Example:
Record 50207 has a grave (U0060) in field 245 which should be translated to apostroph (U0027)
In xxx01/tab/expand add
XXXX fix_doc_convtb FILE=tab_fix_apostroph
You can add a similar line to any expand or fix procedure you want the script to run. Just replace the XXXX with the appropriate name.
xxx01/tab/tab_fix_apostroph
!!!!! !!!!! !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!--->200
>>PAR STD-TAG=#####
245## edit_field
--> translate_text ALL,STR=(:-:\U0060-\U0027,CASEIGN=Y)
Here the character 0060 will be translated to 0027 for field 245##. 245## can be changed to any other field where the translation is needed. It’s also possible to add other characters in another line.
Viewing now the sample record with the expand routine shows that the character is properly translated:
andrea@il-aleph23(a23_1) USM01> util f_04
Load: /exlibris/aleph/a23_1/alephe/tab/tab100
Load: /exlibris/aleph/a23_1/usm01/tab/tab100
ALEPH/LINUX x86_64, Copyright Ex Libris.
version 23 revision 01 copy 1, 03-Aug-2016
***** util_f_04 display Oracle tables data *****
Your active library is USM01
pw_library: USR00 usr_library: USR00
z00 related: z00/z00p/docp/z13/z13u/doc_h/doc_char_conv
[d] - doc - z00 enriched with routines listed under U39-DOC in tab_expand
[e] - doc_expand - z00 enriched with programs under a specific section in tab_expand
[n] - doc_no_expand - z00 as is, without any expand routines
[f] - doc_fix - z00 enriched with programs under a specific section in tab_fix
- z01/z02/z103/z11/z106
- z95/z97/z98/z980/word3
- z101
- z05/z110/z108/z112
- z07/z07p/z105/z120/z127/z128
- z12/z14/z16/z18/z20/z22
- z30/z30h
- z111/z104
- z63/z64/z65
- z68/z70/z71/z72/z74/z75/z76/z77/z78/z79/z82/z83
- z36/z37/z38/z301/z310
- z31/z325/z35
- z36h/z37h
- z60/z61/z66/z67
- z302/z303/z304/z305/z308
- z310/z311/z313/z314/z320/z321
- z400/z100
- z410/z411
- z413/z415/z416
- z00t
- z501/z601/z602/z700/z705
enter file name (or q to exit) doc_expand
Enter expand_menu [No Expand]: XXXX
Load: /exlibris/aleph/a23_1/alephe/unicode/unicode_case
ENTER DOC NUMBER : 50207
Load: /exlibris/aleph/a23_1/alephe/tab/tab100
Load: /exlibris/aleph/a23_1/usm01/tab/tab100
Reading doc : 000050207
…
FMT L BK
LDR L 00000nam^a22^^^^^^u^4500
001 L 000050207
005 L 20160824093623.0
008 L 160817s2004^^^^xx^^^^^^r^^^^^000^0^u^^d
041 L $$au
24500 L $$aTest fix 041. # Hash 0023 ; ' Grave apostrophe 0060 ; ' Apostrophe 0027.
OWN L $$aPUBLIC
CAT L $$aMASTER$$b99$$c20160817$$lUSM01$$h1125
CAT L $$aMASTER$$b99$$c20160824$$lUSM01$$h0936
ENTER DOC NUMBER :
- Article last edited: 24-Aug-2016