Multiple Image in BI Publisher in PeopleSoft 8.53 & Below
This code will be used by the BI Publisher Report
Use the Query as shown below:
The following query will generate the Base64 code in the columns C1 to C20 for Employee Photo and C21 to C30 for Employee Signature.
Note : The Following code works only for the employee image less than 25 KB. In order to increase the size please modify the code accordingly.
SELECT A.EMPLID
, A.DISPLAY_NAME
, A.DATE_OF_BIRTH
, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 1455 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 1))) WHEN
DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 1455 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE( C.EMPL_PHOTO)) END AS IMAGE_C1, CASE WHEN DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO) > 2910 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 1456))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 2910
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 1455 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-1455, 1456))) END AS IMAGE_C2, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 4365 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR(
C.EMPL_PHOTO, 1455, 2911))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 4365
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 2910 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-2910, 2911))) END AS IMAGE_C3, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 5820 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR(
C.EMPL_PHOTO, 1455, 4366))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 5820
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 4365 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-4365, 4366))) END AS IMAGE_C4, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 7275 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR(
C.EMPL_PHOTO, 1455, 5821))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 7275
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 5820 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-5820, 5821))) END AS IMAGE_C5, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 8730 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR(
C.EMPL_PHOTO, 1455, 7276))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 8730
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 7275 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-7275, 7276))) END AS IMAGE_C6, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 10185 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 8731))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 10185
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 8730 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-8730, 8731))) END AS IMAGE_C7, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 11640 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 10186))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 11640
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 10185 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-10185, 10186))) END AS IMAGE_C8, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 13095 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 11641))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 13095
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 11640 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-11640, 11641))) END AS IMAGE_C9, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 14550 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 13096))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 14550
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 13095 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-13095, 13096))) END AS IMAGE_C10, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 16005 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 14551))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 16005
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 14550 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-14550, 14551))) END AS IMAGE_C11, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 17460 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 16006))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 17460
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 16005 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-16005, 16006))) END AS IMAGE_C12, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 18915 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 17461))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 18915
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 17460 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-17460, 17461))) END AS IMAGE_C13, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 20370 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 18916))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 20370
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 18915 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-18915, 18916))) END AS IMAGE_C14, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 21825 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 20371))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 21825
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 20370 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-20370, 20371))) END AS IMAGE_C15, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 23280 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 21826))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 23280
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 21825 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-21825, 21826))) END AS IMAGE_C16, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 24735 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 23281))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 24735
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 23280 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-23280, 23281))) END AS IMAGE_C17, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 26190 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 24736))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 26190
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 24735 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-24735, 24736))) END AS IMAGE_C18, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 27645 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 26191))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 27645
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 26190 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-26190, 26191))) END AS IMAGE_C19, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 29100 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 27646))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 29100
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 27645 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-27645, 27646))) END AS IMAGE_C20, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 1455 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 1))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 1455 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(
E.EMPL_SIGNATURE)) END AS IMAGE_C21, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 2910 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR(
E.EMPL_SIGNATURE, 1455, 1456))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 2910
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 1455 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-1455, 1456))) END AS IMAGE_C22, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 4365 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 2911))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 4365
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 2910 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-2910, 2911))) END AS IMAGE_C23, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 5820 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 4366))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 5820
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 4365 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-4365, 4366))) END AS IMAGE_C24, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 7275 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 5821))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 7275
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 5820 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-5820, 5821))) END AS IMAGE_C25, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 8730 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 7276))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 8730
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 7275 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-7275, 7276))) END AS IMAGE_C26, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 10185 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 8731))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 10185
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 8730 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-8730, 8731))) END AS IMAGE_C27, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 11640 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 10186))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 11640
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 10185 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-10185, 10186))) END AS IMAGE_C28, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 13095 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 11641))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 13095
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 11640 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-11640, 11641))) END AS IMAGE_C29, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 14550 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 13096))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 14550
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 13095 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-13095, 13096))) END AS IMAGE_C30
FROM PS_REQ_TBL A, PS_EMPLIMG C, PS_EMPSIGN E
WHERE A.EMPLID = C.EMPLID
AND A.EMPLID = E.EMPLID ;
Now in the BI Publisher Report add a Field. Edit the field and paste the following code in the Property:
Note : The Following code works only for the employee image less than 25 KB. In order to increase the size please modify the code accordingly.
For Employee Photo :
< fo:instream-foreign-object content-type="image/jpg"height="2 in" width="2 in">
< xsl:value-of select="concat(C1,C2,C3,C4,C5,C6,C7,C8,C9,C10,C11,C12,C13,C14,C15,C16,C17,C18,C19,C20)"/>
< /fo:instream-foreign-object>
For Employee Signature:
< fo:instream-foreign-object content-type="image/jpg"height="2 in" width="2 in">
< xsl:value-of select="concat(C21,C22,C23,C24,C25,C26,C27,C28,C29,C30)"/>
< /fo:instream-foreign-object>
Use the Query as shown below:
The following query will generate the Base64 code in the columns C1 to C20 for Employee Photo and C21 to C30 for Employee Signature.
Note : The Following code works only for the employee image less than 25 KB. In order to increase the size please modify the code accordingly.
SELECT A.EMPLID
, A.DISPLAY_NAME
, A.DATE_OF_BIRTH
, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 1455 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 1))) WHEN
DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 1455 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE( C.EMPL_PHOTO)) END AS IMAGE_C1, CASE WHEN DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO) > 2910 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 1456))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 2910
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 1455 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-1455, 1456))) END AS IMAGE_C2, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 4365 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR(
C.EMPL_PHOTO, 1455, 2911))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 4365
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 2910 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-2910, 2911))) END AS IMAGE_C3, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 5820 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR(
C.EMPL_PHOTO, 1455, 4366))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 5820
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 4365 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-4365, 4366))) END AS IMAGE_C4, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 7275 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR(
C.EMPL_PHOTO, 1455, 5821))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 7275
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 5820 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-5820, 5821))) END AS IMAGE_C5, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 8730 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR(
C.EMPL_PHOTO, 1455, 7276))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 8730
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 7275 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-7275, 7276))) END AS IMAGE_C6, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 10185 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 8731))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 10185
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 8730 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-8730, 8731))) END AS IMAGE_C7, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 11640 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 10186))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 11640
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 10185 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-10185, 10186))) END AS IMAGE_C8, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 13095 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 11641))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 13095
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 11640 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-11640, 11641))) END AS IMAGE_C9, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 14550 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 13096))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 14550
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 13095 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-13095, 13096))) END AS IMAGE_C10, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 16005 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 14551))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 16005
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 14550 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-14550, 14551))) END AS IMAGE_C11, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 17460 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 16006))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 17460
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 16005 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-16005, 16006))) END AS IMAGE_C12, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 18915 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 17461))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 18915
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 17460 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-17460, 17461))) END AS IMAGE_C13, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 20370 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 18916))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 20370
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 18915 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-18915, 18916))) END AS IMAGE_C14, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 21825 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 20371))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 21825
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 20370 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-20370, 20371))) END AS IMAGE_C15, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 23280 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 21826))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 23280
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 21825 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-21825, 21826))) END AS IMAGE_C16, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 24735 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 23281))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 24735
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 23280 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-23280, 23281))) END AS IMAGE_C17, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 26190 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 24736))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 26190
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 24735 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-24735, 24736))) END AS IMAGE_C18, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 27645 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 26191))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 27645
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 26190 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-26190, 26191))) END AS IMAGE_C19, CASE WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 29100 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, 1455, 27646))) WHEN DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) <= 29100
AND DBMS_LOB.GETLENGTH( C.EMPL_PHOTO) > 27645 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( C.EMPL_PHOTO, DBMS_LOB.GETLENGTH(
C.EMPL_PHOTO)-27645, 27646))) END AS IMAGE_C20, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 1455 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 1))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 1455 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(
E.EMPL_SIGNATURE)) END AS IMAGE_C21, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 2910 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR(
E.EMPL_SIGNATURE, 1455, 1456))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 2910
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 1455 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-1455, 1456))) END AS IMAGE_C22, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 4365 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 2911))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 4365
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 2910 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-2910, 2911))) END AS IMAGE_C23, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 5820 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 4366))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 5820
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 4365 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-4365, 4366))) END AS IMAGE_C24, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 7275 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 5821))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 7275
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 5820 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-5820, 5821))) END AS IMAGE_C25, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 8730 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 7276))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 8730
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 7275 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-7275, 7276))) END AS IMAGE_C26, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 10185 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 8731))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 10185
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 8730 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-8730, 8731))) END AS IMAGE_C27, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 11640 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 10186))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 11640
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 10185 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-10185, 10186))) END AS IMAGE_C28, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 13095 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 11641))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 13095
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 11640 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-11640, 11641))) END AS IMAGE_C29, CASE WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 14550 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE
(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, 1455, 13096))) WHEN DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) <= 14550
AND DBMS_LOB.GETLENGTH( E.EMPL_SIGNATURE) > 13095 THEN UTL_RAW.CAST_TO_VARCHAR2(UTL_ENCODE.BASE64_ENCODE(DBMS_LOB.SUBSTR( E.EMPL_SIGNATURE, DBMS_LOB.GETLENGTH(
E.EMPL_SIGNATURE)-13095, 13096))) END AS IMAGE_C30
FROM PS_REQ_TBL A, PS_EMPLIMG C, PS_EMPSIGN E
WHERE A.EMPLID = C.EMPLID
AND A.EMPLID = E.EMPLID ;
Now in the BI Publisher Report add a Field. Edit the field and paste the following code in the Property:
Note : The Following code works only for the employee image less than 25 KB. In order to increase the size please modify the code accordingly.
For Employee Photo :
< fo:instream-foreign-object content-type="image/jpg"height="2 in" width="2 in">
< xsl:value-of select="concat(C1,C2,C3,C4,C5,C6,C7,C8,C9,C10,C11,C12,C13,C14,C15,C16,C17,C18,C19,C20)"/>
< /fo:instream-foreign-object>
For Employee Signature:
< fo:instream-foreign-object content-type="image/jpg"height="2 in" width="2 in">
< xsl:value-of select="concat(C21,C22,C23,C24,C25,C26,C27,C28,C29,C30)"/>
< /fo:instream-foreign-object>
No comments:
Post a Comment