BACKGROUND INFO: I have a stored procedure with two BLOB SUB_TYPE 1 variables declared. One contains a letter template, the other contains the letter text. In the template I have the character string [LETTER_BODY] at the place where I want the letter text to appear. (It is placed in the middle of the template.. there is standard text in the template that appears after the [LETTER_BODY] character string.
Here is what I do in the stored procedure: ... DECLARE vLTR_TXT BLOB SUB_TYPE 1; DECLARE vCHT_TXT BLOB SUB_TYPE 1; ... --Both variables are populated from BLOB SUB_TYPE 1 fields in two different tables. ... vLTR_TXT = REPLACE(:vLTR_TXT, '[LETTER_BODY]', :vCHT_TXT); ... -- The vLTR_TXT is then used in an UPDATE statement to save the new letter text to a BLOB SUB_TYPE 1 field in yet another table. The REPLACE() correctly replaces the [LETTER_BODY] tag with the text contained in :vCHT_TXT variable. Text in the template that occurs BEFORE the [LETTER_BODY] tag is still there, however, a problem occurs, in that NO TEXT AFTER what was inserted from the :vCHT_TXT variable is preserved. It's as if there is an EOF marker at the end of :vCHT_TXT that is being "obeyed" by the :vLTR_TXT BLOB. Note that this problem DOES NOT OCCUR if I use a hard coded string value. Like: vLTR_TXT = REPLACE(:vLTR_TXT, '[LETTER_BODY]', 'My String'); QUESTION: Is there a way of removing the EOF character at the end of :vCHT_TXT so that it "looks like" a simple string? I don't want to change :vCHT_TXT to a VARCHAR(32000) because it is conceivable that a user could enter more than 5 pages of text (more than 32000 characters). (Or will removing that character cause a malfunction of FB?) Is there any other suggestions that will solve this problem? (I've tried declaring the variables as BLOB SUB_TYPE 0, makes no difference.. same problem occurs) -- Thanks in advance for any help you can provide.
