BLOb-Funktionen:
Bearbeiten |
|
ab |
|
ersetzbar
durch
F_LEFT |
ab |
|
ersetzbar die
eingebaute Funktion LEFT |
F_BLOBLEFT
|
kompatibel
zu
FreeUDFLib, FreeUDFLib AvERP, GrUDF |
Entrypoint |
blobleft |
nicht UTF-8
kompatibel -
benutze U_LEFT |
Input |
BLOB
INTEGER |
Text-Blob,
der
beschnitten werden soll
Länge des auszugebenden Strings |
Output |
CSTRING(32760) |
String
beschnitten
auf die Anzahl Zeichen von links von Parameter 2 |
Zählung beginnt
bei 1
TestSQL (für TestISO.GDB)
SELECT 'ein einzeiliger' AS ISCORRECT, F_BLOBLEFT(TEXTBLOB, 15) FROM
BLOBTEST WHERE BLOBTESTID = 1;
SELECT '' AS ISCORRECT, F_BLOBLEFT(TEXTBLOB, 15) FROM BLOBTEST WHERE
BLOBTESTID = 11;
SELECT NULL AS ISCORRECT, F_BLOBLEFT(TEXTBLOB, NULL) FROM BLOBTEST
WHERE BLOBTESTID = 10; |
|
ab |
|
ersetzbar
durch F_MID |
F_BLOBMID
|
kompatibel
zu
FreeUDFLib,
FreeUDFLibC, FreeUDFLib AvERP, GrUDF
|
Entrypoint |
blobmid |
nicht UTF-8
kompatibel -
benutze U_MID |
ab |
|
ersetzbar
durch F_COPY oder F_STRCOPY |
F_RBLOBMID |
Input/Output-kompatibel
zu rFunc (B_SUBSTR, B_LONGSUBSTR) |
Entrypoint |
r_blobmid |
nicht UTF-8
kompatibel -
benutze U_MID |
Input |
BLOB
INTEGER
INTEGER |
TextBlob,
aus
dem eine Zeichenkette ermittelt werden soll
Position, an der der zu ermittelnde String beginnt
Länge des zu ermittelnden Strings |
Output |
CSTRING(32760) |
Anzahl
der
Buchstaben (Parameter 3) des eingegebenen Text ab der eingegebenen
Buchstabennummer (Parameter 2) |
F_BLOBMID
- Zählung beginnt für Parameter 2 bei 0.
F_RBLOBMID - Zählung
beginnt für Parameter 2 bei 1.
TestSQL (für TestISO.GDB)
SELECT 'zwei' AS ISCORRECT, F_BLOBMID(TEXTBLOB, 4, 4) FROM BLOBTEST
WHERE BLOBTESTID = 2;
SELECT NULL AS ISCORRECT, F_BLOBMID(TEXTBLOB, NULL, NULL) FROM
BLOBTEST
WHERE BLOBTESTID = 10; |
|
ab |
|
ersetzbar
durch F_RIGHT |
ab |
|
ersetzbar
durch die eingebaute Funktion RIGHT |
F_BLOBRIGHT |
kompatibel
zu
FreeUDFLib,
FreeUDFLibC, FreeUDFLib AvERP, GrUDF |
Entrypoint |
blobright |
nicht UTF-8
kompatibel -
benutze U_RIGHT |
Input |
BLOB
INTEGER |
Text-Blob,
der
beschnitten werden soll
Anzahl der Zeichen von rechts |
Output |
CSTRING(32760) |
String
beschnitten
auf die Anzahl Zeichen gezählt von rechts von Parameter 2 |
Zählung beginnt
bei 1
TestSQL (für TestISO.GDB)
SELECT 'dritten Zeile' AS ISCORRECT, F_BLOBRIGHT(TEXTBLOB, 13) FROM
BLOBTEST WHERE BLOBTESTID = 3;
SELECT NULL AS ISCORRECT, F_BLOBRIGHT(TEXTBLOB, NULL) FROM BLOBTEST
WHERE BLOBTESTID = 10; |
|
ab |
|
ersetzbar
durch || (wie bei Strings) |
F_BLOBCAT |
kompatibel
zu GrUDF |
Entrypoint |
blobcat |
nicht UTF-8
kompatibel -
benutze normalen || |
Input |
BLOB
BLOB |
Text-Blob,
der
mit Text-BLOb aus Parameter 2 zusammengeführt werden soll
Text-Blob, der an Text-BLOb aus Parameter 1 angehängt werden soll |
Output |
BLOB |
Verkettet
die
Inhalte zweier Blobfelder zu einem Gemeinsamen |
Die Funktion
macht nach dem 1. BLOb einen CRLF,
bevor sie den 2. BLOb anhängt.
TestSQL (für TestISO.GDB)
INSERT INTO BLOBTEST (TEXTBLOB) SELECT F_BLOBCAT(TEXTBLOB, (SELECT
TEXTBLOB FROM BLOBTEST WHERE BLOBTESTID = 2)) FROM BLOBTEST WHERE
BLOBTESTID = 1;
Erzeugt in Tabelle BLOBTEST einen neuen Datensatz, wo das Feld
TEXTBLOB
sich aus den zusammengefügten Inhalten von TEXTBLOB des Datensatzes
mit
der TEXTBLOBID 1 und des Datensatzes mit der TEXTBLOBID 2 ergibt. |
|
ab |
|
ersetzbar
durch || (wie bei Strings) |
F_BLOBCATSTR |
kompatibel
zu
GrUDF |
Entrypoint |
blobcatstr |
nicht UTF-8
kompatibel -
benutze normalen || |
Input |
BLOB
CSTRING(32760) |
Text-Blob,
der
mit Text-String aus Parameter 2 zusammengeführt werden soll
Text-String, der an Text-BLOb aus Parameter 1 angehängt werden soll |
Output |
BLOB |
Verkettet
den
Inhalt eines Blobfeldes mit einem String zu einem BLOb |
Die Funktion
macht nach dem 1. BLOb einen CRLF,
bevor sie den 2. String anhängt.
TestSQL (für TestISO.GDB)
INSERT INTO BLOBTEST (TEXTBLOB) SELECT F_BLOBCATSTR(TEXTBLOB, 'Diese
Zeile wurde angehängt') FROM BLOBTEST WHERE BLOBTESTID = 1;
Erzeugt in Tabelle BLOBTEST einen neuen Datensatz, wo das Feld
TEXTBLOB
sich aus den zusammengefügten Inhalten von TEXTBLOB des Datensatzes
mit
der TEXTBLOBID 1 und des Strings ‘Diese Zeile wurde angehängt'’
ergibt. |
|
ab |
|
ersetzbar
durch F_REPLACESTRING |
F_BLOBREPLACESTRING |
Funktion
von adhoc
|
Entrypoint |
blobreplacestring |
nicht UTF-8
kompatibel -
benutze U_BLOBREPLACESTRING |
U_BLOBREPLACESTRING |
Funktion
von adhoc
|
Entrypoint |
u_blobreplacestring |
UTF-8
kompatibel |
Input |
BLOB
CSTRING(254)
CSTRING(254)
INTEGER
INTEGER |
Text-BLOb,
indem
eine Zeichenkette ausgetauscht werden soll
der auszutauschende String
der String, der gesetzt werden soll
0 = nur das erste Vorkommen austauschen, 1 = alle Vorkommen
austauschen
0 = Groß-/Kleinschreibung berücksichtigen, 1 = nicht berücksichtigen |
Output |
BLOB |
Ersetzt
in
einem Text-BLOb eine/alle Zeichenkette/n aus Parameter 2 durch eine
andere Zeichenkette aus Parameter 3 |
Kann auch
mehrmals austauschen sowie
Groß-Kleinschreibung berücksichtigen.
TestSQL (für TestISO.GDB)
SELECT 'vier einzeiliger TextBLOb' AS ISCORRECT,
F_BLOBREPLACESTRING(TEXTBLOB, 'ein', 'vier', 0, 0) FROM BLOBTEST
WHERE
BLOBTESTID = 1;
SELECT 'vier vierzeiliger TextBLOb' AS ISCORRECT,
F_BLOBREPLACESTRING(TEXTBLOB, 'ein', 'vier', 1, 0) FROM BLOBTEST
WHERE
BLOBTESTID = 1;
|
|
ab |
|
ersetzbar
durch F_SUBSTR |
F_BLOBSUBSTR |
kompatibel
zu
FreeUDFLib,
FreeUDFLibC, FreeUDFLib AvERP, GrUDF
Input/Output-kompatibel
zu rFunc
(B_STRPOS) |
Entrypoint |
blobsubstr |
nicht UTF-8
kompatibel -
benutze U_BLOBSUBSTR |
U_BLOBSUBSTR |
Funktion
von adhoc
|
Entrypoint |
u_blobsubstr |
UTF-8
kompatibel |
Input |
BLOB
CSTRING(1024) |
TextBLOb
(in
dem die Position von Parameter 2 ermittelt werden soll)
String 2 (dessen Position in Parameter 1 ermittelt werden soll) |
Output |
INTEGER |
erste
Position
im BLOb, bei der der String 2 beginnt |
Zählung beginnt
bei 0.
TestSQL (für TestISO.GDB)
SELECT 4 AS ISCORRECT, F_BLOBSUBSTR(TEXTBLOB, 'einzeiliger') FROM
BLOBTEST WHERE BLOBTESTID = 1;
SELECT NULL AS ISCORRECT, F_BLOBSUBSTR(TEXTBLOB, NULL) FROM BLOBTEST
WHERE BLOBTESTID = 10; |
|
F_BLOBLINE |
kompatibel
zu
FreeUDFLib, FreeUDFLib AvERP
Input/Output-kompatibel
zu rFunc
(B_LINE, B_LONGLINE) |
Entrypoint |
blobline |
UTF-8
kompatibel |
Input |
BLOB
INTEGER |
TextBLOb
Nr. der Zeile, die wiedergegeben werden soll |
Output |
CSTRING(32760) |
<Parameter
2>
Zeile des TextBLObs |
TestSQL
(für TestISO/UTF8.GDB/FDB)
SELECT 'mit einer zweiten Zeile' AS ISCORRECT, F_BLOBLINE(TEXTBLOB,
2) FROM BLOBTEST WHERE BLOBTESTID = 3;
SELECT NULL AS ISCORRECT, F_BLOBLINE(TEXTBLOB, NULL) FROM BLOBTEST
WHERE BLOBTESTID = 10; |
|