Tuesday, January 16, 2007
Tip of the Day: Converting RTF to Plain TEXT, NOTE or VARCHAR
Supported Versions:
. R:BASE 7.5 for Windows
. R:BASE 7.6 and R:BASE C/S:I 7.6 for Windows
. R:BASE Turbo V-8
Did you know that you can convert Rich Text Format (RTF) data
to a plain TEXT, NOTE or VARCHAR data using the RTFtoTEXT.RBL
Plugin?
Here's how:
Syntax: (Four Different Scenarios)
-- When Input/Output Data is a VARIABLE
PLUGIN RRTFtoTXT.RBL vResult +
|INPUT_TYPE VARIABLE +
|INPUT_VARIABLE inputvarname +
|OUTPUT_TYPE VARIABLE +
|OUTPUT_VARIABLE outputvarname +
|OUTPUT_DATA_TYPE value
WHERE:
. vResult is the resulting message value, such as, "OK"
or the actual "-ERROR- message".
. INPUT_VARIABLE inputvarname is the input RTF data as
variable
. OUTPUT_VARIABLE outputvalue is the resulting output
variable name with converted data
. OUTPUT_DATA_TYPE value is the data type (TEXT, NOTE,
or VARCHAR)
-- When Input/Output Data is an external FILE
PLUGIN RRTFtoTXT.RBL vResult +
|INPUT_TYPE FILE +
|INPUT_FILE inputfilename.rtf +
|OUTPUT_TYPE FILE +
|OUTPUT_FILE outputfile.txt +
|OUTPUT_DATA_TYPE value
WHERE:
. vResult is the resulting message value, such as, "OK"
or the actual "-ERROR- message".
. INPUT_FILE inputfilename.rtf is the input RTF file name
. OUTPUT_FILE outputfilename.txt is the resulting output
file with converted data
. OUTPUT_DATA_TYPE value is the data type (TEXT, NOTE,
or VARCHAR)
-- When Input is a VARIABLE and Output is an external FILE
PLUGIN RRTFtoTXT.RBL vResult +
|INPUT_TYPE VARIABLE +
|INPUT_VARIABLE inputvarname +
|OUTPUT_TYPE FILE +
|OUTPUT_FILE outputfilename.txt +
|OUTPUT_DATA_TYPE value
WHERE:
. vResult is the resulting message value, such as, "OK"
or the actual "-ERROR- message".
. INPUT_VARIABLE inputvarname is the input RTF data as
variable
. OUTPUT_FILE outputfilename.txt is the resulting output
file with converted data
. OUTPUT_DATA_TYPE value is the data type (TEXT, NOTE,
or VARCHAR)
-- When Input is a an external FILE and Output is a VARIABLE
PLUGIN RRTFtoTXT.RBL vResult +
|INPUT_TYPE FILE +
|INPUT_FILE inputfilename.rtf +
|OUTPUT_TYPE VARIABLE +
|OUTPUT_VARIABLE outputvarname +
|OUTPUT_DATA_TYPE value
WHERE:
. vResult is the resulting message value, such as, "OK"
or the actual "-ERROR- message".
. INPUT_FILE inputfilename.rtf is the input RTF file name
. OUTPUT_VARIABLE outputvarname is the resulting output
variable name with converted data
. OUTPUT_DATA_TYPE value is the data type (TEXT, NOTE,
or VARCHAR)
Notes:
. Use RRTFtoTXT.RBL for R:BASE 7.5 for Windows
. Use RRTFtoTXT76.RBL for R:BASE 7.6 for Windows
. Use RRTFtoTXT76.RBL for R:BASE C/S:I 7.6 for Windows
. Use RRTFtoTXT80.RBL for R:BASE Turbo V-8 for Windows
. RRTFtoTXT Plugin is included with R:BASE Plugin Power Pack
Example:
-- ConvertingRTF_to_TEXT.RMD
-- Author: A. Razzak Memon
-- Date Created: January 16, 2007
-- Converting _NOTE_VARCHAR.RMD
-- To be used with R:BASE 7.6 for Windows
-- Required Plugin:
-- RRTFtoTXT76.RBL in C:\RBTI\RBG76 or application .EXE folder
IF (CVAL('DATABASE')) <> 'RTFtoTXT' OR (CVAL('DATABASE')) IS NULL THEN
CONNECT RTFtoTXT IDENTIFIED BY NONE
ENDIF
LABEL Start
CLS
CLEAR VARIABLES iv%,vRecordID,vRTFData,vTextData,vNoteData, +
vVarCharData,vResult
SET VARIABLE vRecordID INTEGER = 2
SET VARIABLE vRTFData VARCHAR = NULL
SET VARIABLE vTextData TEXT = NULL
SET VARIABLE vNoteData NOTE = NULL
SET VARIABLE vVarCharData VARCHAR = NULL
SET VARIABLE vResult TEXT = NULL
SELECT RecordID,RTFData INTO +
vRecordID INDICATOR ivRecordID, +
vRTFData INDICATOR ivRTFData +
FROM RTFData WHERE RecordID = .vRecordID
-- Converting RTF Data to TEXT
PLUGIN RRTFtoTXT76.RBL vResult +
|INPUT_TYPE VARIABLE +
|INPUT_VARIABLE vRTFData +
|OUTPUT_TYPE VARIABLE +
|OUTPUT_VARIABLE vTextData +
|OUTPUT_DATA_TYPE TEXT
IF vResult <> 'OK' THEN
PAUSE 2 USING .vResult ICON ERROR
ELSE
INSERT INTO TextData VALUES (.vRecordID,.vTextData)
ENDIF
-- Converting RTF Data to NOTE
PLUGIN RRTFtoTXT76.RBL vResult +
|INPUT_TYPE VARIABLE +
|INPUT_VARIABLE vRTFData +
|OUTPUT_TYPE VARIABLE +
|OUTPUT_VARIABLE vNoteData +
|OUTPUT_DATA_TYPE NOTE
IF vResult <> 'OK' THEN
PAUSE 2 USING .vResult ICON ERROR
ELSE
INSERT INTO NoteData VALUES (.vRecordID,.vNoteData)
ENDIF
-- Converting RTF Data to VARCHAR
PLUGIN RRTFtoTXT76.RBL vResult +
|INPUT_TYPE VARIABLE +
|INPUT_VARIABLE vRTFData +
|OUTPUT_TYPE VARIABLE +
|OUTPUT_VARIABLE vVarCharData +
|OUTPUT_DATA_TYPE VARCHAR
IF vResult <> 'OK' THEN
PAUSE 2 USING .vResult ICON ERROR
ELSE
INSERT INTO VarCharData VALUES (.vRecordID,.vVarCharData)
ENDIF
LABEL Done
CLEAR VARIABLES iv%,vRecordID,vRTFData,vTextData,vNoteData, +
vVarCharData,vResult
RETURN
A sample application is also available at:
Sample Applications: http://www.razzak.com/sampleapplications/
Enjoy and make sure to have fun!
Very Best R;egards,
Razzak.
--- RBASE-L
================================================
TO POST A MESSAGE TO ALL MEMBERS:
Send a plain text email to [email protected]
(Don't use any of these words as your Subject:
INTRO, SUBSCRIBE, UNSUBSCRIBE, SEARCH,
REMOVE, SUSPEND, RESUME, DIGEST, RESEND, HELP)
================================================
TO SEE MESSAGE POSTING GUIDELINES:
Send a plain text email to [email protected]
In the message SUBJECT, put just one word: INTRO
================================================
TO UNSUBSCRIBE:
Send a plain text email to [email protected]
In the message SUBJECT, put just one word: UNSUBSCRIBE
================================================
TO SEARCH ARCHIVES:
Send a plain text email to [email protected]
In the message SUBJECT, put just one word: SEARCH-n
(where n is the number of days). In the message body,
place any
text to search for.
================================================