Programming Using the API 
111 
HLLDOMOBJ hProj = LlProjectOpen(hJob, LL_PROJECT_LIST, "c:\\simple.lst", 
LL_PRJOPEN_CD_OPEN_EXISTING | LL_PRJOPEN_AM_READWRITE); 
// Fax parameter: 
LlDomSetProperty(hProj, _T("ProjectParameters.LL.FAX.RecipName.Contents"), 
_T("'sunshine agency'")); 
LlDomSetProperty(hProj, _T("ProjectParameters.LL.FAX.RecipNumber.Contents"), 
_T("'555-555 555'")); 
LlDomSetProperty(hProj, 
T("ProjectParameters.LL.FAX.SenderCompany.Contents"), 
_T("'combit'")); 
LlDomSetProperty(hProj,_T("ProjectParameters.LL.FAX.SenderName.Contents"), 
_T("John Q. Public'")); 
// Mail parameter: 
LlDomSetProperty(hProj, _T("ProjectParameters.LL.MAIL.Subject.Contents"),  
_T("'Your request'")); 
LlDomSetProperty(hProj, _T("ProjectParameters.LL.MAIL.From.Contents"),  
_T("'info@combit.net'")); 
LlDomSetProperty(hProj, _T("ProjectParameters.LL.MAIL.To.Contents"),  
_T("'info@sunshine-agency.net'")); 
// Save project 
LlProjectSave(hJob, NULL); 
LlProjectClose(hJob); 
LlJobClose(hJob); 
Convert pdf scanned image to text - Library SDK component:C# PDF Convert to Text SDK: Convert PDF to txt files in C#.net, ASP.NET MVC, WinForms, WPF application
C# PDF to Text (TXT) Converting Library to Convert PDF to Text
www.rasteredge.com
Convert pdf scanned image to text - Library SDK component:VB.NET PDF Convert to Text SDK: Convert PDF to txt files in vb.net, ASP.NET MVC, WinForms, WPF application
VB.NET Guide and Sample Codes to Convert PDF to Text in .NET Project
www.rasteredge.com
API Reference 
112 
5. API Reference 
5.1. Function Reference 
LlAddCtlSupport 
Syntax: 
INT LlAddCtlSupport (HWND hWnd, UINT nFlags, LPCTSTR lpszInifile; 
Task: 
Allows you to use combit dialog styles in your own application. 
Parameter: 
hWnd: Window-handle of the program 
nFlags: Multiple flags can be used by adding these constants: 
Value 
Meaning 
LL_CTL_ADDTOSYSMENU  Extends the system menu of the program 
with a choice of a dialog style. 
LL_CTL_ALSOCHILDREN 
Ensures that the child windows 
automatically use the same dialog styles as 
their parent.  
LL_CTL_-
CONVERTCONTROLS 
Ensures that correct drawing is possible 
even with VB ("Thunder") Controls. 
lpszInifile: Name of a valid registry key. Suggestion: leave empty ("") to use 
the default. 
Return Value: 
Error code 
Hints: 
Enables e.g. your application to be provided with other (combit) dialog styles. 
Example: 
LlAddCtlSupport(hWndMain, LL_CTL_ALSOCHILDREN | 
LL_CTL_CONVERTCONTROLS, ""); 
LlAssociatePreviewControl 
Syntax: 
INT LlAssociatePreviewControl(HLLJOB hJob, HWND hWndControl,  
UINT nFlags); 
Library SDK component:C# PDF - Extract Text from Scanned PDF Using OCR SDK
C#.NET PDF Windows Viewer, C#.NET convert image to PDF NET convert PDF to text, C#.NET convert PDF to images C#.NET PDF - Extract Text from Scanned PDF Using OCR
www.rasteredge.com
Library SDK component:C# TIFF: How to Convert TIFF File to PDF Document in C# Project
Convert TIFF to PDF in C#.NET Overview. page or multi-page TIFF file to scanned PDF document using C# are searching for both single and batch image and document
www.rasteredge.com
API Reference 
113 
Task: 
Associates a LL job to a preview control. 
Parameters: 
hJob: List & Label job handle 
hWnd: window handle 
nFlags:  
Value 
Meaning 
LL_ASSOCIATEPREVIEW-
CONTROLFLAG_DELETE_-
ON_CLOSE 
Automatically delete preview file when preview is 
closed 
LL__ASSOCIATEPREVIEW-
CONTROLFLAG_HANDLE_-
IS_ATTACHINFO 
Informs the API, that the passed window handle is 
 pointer  to  a  structure  containing  drilldown 
information 
LL_ASSOCIATEPREVIEW-
CONTROLFLAG_PRV_-
REPLACE 
If 
LL_ASSOCIATEPREVIEWCONTROLFLAG_-
HANDLE_IS_ATTACHINFO  is not  set: the  current 
preview will be replaced by this preview 
LL_ASSOCIATEPREVIEW-
CONTROLFLAG_PRV_-
ADD_TO_CONTROL_STACK 
If 
LL_ASSOCIATEPREVIEWCONTROLFLAG_-
HANDLE_IS_ATTACHINFO is not set: this preview 
is added to the current preview tab 
LL_ASSOCIATEPREVIEW-
CONTROLFLAG_PRV_-
ADD_TO_CONTROL_IN_-
TAB 
If 
LL_ASSOCIATEPREVIEWCONTROLFLAG_-
HANDLE_IS_ATTACHINFO is not set: this preview 
is added to the current preview window in a new 
tab 
If necessary combined with 'or'. 
Return Value: 
Error code 
Hints: 
See chapter "4.7.1. Direct Print and Export From the Designer". 
Example: 
See chapter "4.7.1. Direct Print and Export From the Designer". 
LlCreateSketch 
Syntax: 
INT LlCreateSketch (HLLJOB hJob, UINT nObjType, LPCTSTR lpszObjName); 
Library SDK component:C#: Use OCR SDK Library to Get Image and Document Text
Get BasePage and Convert it to Extract Text from Scanned PDF. In addition to raster image files, text extraction from PDF is also supported by our OCR toolkit
www.rasteredge.com
Library SDK component:VB.NET PDF - Extract Text from Scanned PDF Using OCR SDK
extract PDF pages, VB.NET comment annotate PDF, VB.NET delete PDF pages, VB.NET convert PDF to SVG. VB.NET PDF - Extract Text from Scanned PDF Using OCR
www.rasteredge.com
API Reference 
114 
Task: 
Creates a sketch that can later be displayed in the file selection dialogs. The 
color depth can be set using LL_OPTION_SKETCHCOLORDEPTH 
Parameter: 
hJob: List & Label job handle 
nObjType: Project type 
Value 
Meaning 
LL_PROJECT_LABEL 
for labels 
LL_PROJECT_CARD 
for cards 
LL_PROJECT_LIST 
for lists 
lpszObjName: Pointer to project's file name (with path) 
Return Value: 
Error code 
Hints: 
This API function can be used to create the sketches on-the-fly automatically, 
so that you do not need to include the sketch files in your setup. 
See also: 
LlSelectFileDlgTitleEx 
LlDbAddTable 
Syntax: 
INT LlDbAddTable(HLLJOB hJob, LPCTSTR pszTableID,  
 LPCTSTR pszDisplayName); 
Task: 
Adds a table or schema for designing and printing. This table is available in 
the Designer and List & Label can request it at print time. 
Parameter: 
hJob: List & Label job handle 
pszTableID:  Unique  name  of  the  table.  It  is  returned  by  the 
LlPrintDbGetCurrentTable() function at print time. If you pass an empty string 
or NULL, the table buffer will be deleted. 
pszDisplayName: Name of the table as displayed in the Designer. If no name 
is given, the display name and the unique name are identical. 
Library SDK component:C# TWAIN - TWAIN Scanning in C# Overview
to the application where you can view, convert, process, annotate Easy to save scanned image to PC local file in the file in C#.NET project, like PDF and TIFF.
www.rasteredge.com
Library SDK component:C# PDF - Acquire or Save PDF Image to File
with the process of scanning from device and convert the images new REImage(bmp); } // form a PDF document using image collection scanned PDFDocument doc
www.rasteredge.com
API Reference 
115 
Return Value: 
Error code 
Hints: 
If a table name contains a "." a schema will be used. 
See the hints in chapter "4.5. Printing Relational Data". 
Example: 
HLLJOB hJob; 
hJob = LlJobOpen(0); 
LlDbAddTable(hJob, "", NULL); 
LlDbAddTable(hJob, "Orders", NULL); 
LlDbAddTable(hJob, "OrderDetails", NULL); 
LlDbAddTable(hJob, " HumanResources.Employee", NULL); // schema info 
<... etc ...> 
LlJobClose(hJob); 
See also: 
LlDbAddTableSortOrder,  LlDbAddTableRelation,  LlPrintDbGetCurrentTable, 
LlPrintDbGetCurrentTableSortOrder, LlPrintDbGetCurrentTableRelation 
LlDbAddTableRelation 
Syntax: 
INT LlDbAddTableRelation(HLLJOB hJob, LPCTSTR pszTableID,  
 LPCTSTR pszParentTableID, LPCTSTR pszRelationID,  
 LPCTSTR pszRelationDisplayName); 
Task: 
This method  can be used to define relations between  the tables added via 
LlDbAddTable(). List & Label  does  not  directly distinguish between different 
relation types. You simply pass a relation and its ID, and you can query the 
current relation later at print time using LlPrintDbGetCurrentTableRelation(). 
Parameter: 
hJob: List & Label job handle 
pszTableID:  ID  of  the  child  table.  Must  be  identical  to  the  ID  passed  in 
LlDbAddTable(). 
pszParentTableID: ID of the parent table. Must be identical to the ID passed 
in LlDbAddTable(). 
pszRelationID:  Unique  ID  of  the  table  relation.  It  is  returned  by 
LlPrintDbGetCurrentTableRelation() at print time. 
pszRelationDisplayName:  Name  of  the  table  relation  as  displayed  in  the 
Designer and it is not saved to the project file. If no name is given, the display 
name and the unique name are identical. 
Library SDK component:VB.NET TWAIN: Render and Convert TWAIN Acquired Image to Other
PDF, image PDF and image plus text PDF documents), single gif, bmp & png and vector image - svg It can render and convert scanned image into any TWAIN-compatible
www.rasteredge.com
Library SDK component:VB.NET PDF - Acquire or Save PDF Image to File
C#: Convert PDF to HTML; C#: Convert PDF to Jpeg; C# File: Compress PDF; C# File: Merge PDF; C# Read: PDF Image Extract; C# Write: Insert text into PDF; C# Write
www.rasteredge.com
API Reference 
116 
Return Value: 
Error code 
Hints: 
See  the  hints in  chapter  "4.5.  Printing  Relational  Data".  Before  using  the  call,  the 
parent and child table must be passed with LlDbAddTable(). 
Example: 
HLLJOB hJob; 
hJob = LlJobOpen(0); 
LlDbAddTable(hJob, "Orders", NULL); 
LlDbAddTable(hJob, "OrderDetails", NULL); 
LlDbAddTableRelation(hJob, "OrderDetails", "Orders", 
 "Orders2OrderDetails", NULL); 
<... etc ...> 
LlJobClose(hJob); 
See also: 
LlDbAddTable, 
LlDbAddTableSortOrder, 
LlPrintDbGetCurrentTable, 
LlPrintDbGet-CurrentTableSortOrder, LlPrintDbGetCurrentTableRelation 
LlDbAddTableRelationEx 
Syntax: 
INT LlDbAddTableRelationEx(HLLJOB hJob, LPCTSTR pszTableID,  
 LPCTSTR pszParentTableID, LPCTSTR pszRelationID,  
LPCTSTR pszRelationDisplayName, LPCTSTR pszKeyField,  
LPCTSTR pszParentKeyField); 
Task: 
This method can be used to define a relation between two tables added via 
LlDbAddTable(), especially for drilldown support. List & Label does not directly 
distinguish between different relation types. You simply pass a relation and its 
ID,  and  you  can  query  the  current  relation  later  at  print  time  using 
LlPrintDbGetCurrentTableRelation(). 
Parameter: 
hJob: List & Label job handle 
pszTableID:  ID  of  the  child  table.  Must  be  identical  to  the  ID  passed  in 
LlDbAddTable(). 
pszParentTableID: ID of the parent table. Must be identical to the ID passed 
in LlDbAddTable(). 
pszRelationID:  ID  of  the  table  relation.  It  is  returned  by 
LlPrintDbGetCurrentTableRelation() at print time. 
API Reference 
117 
pszRelationDisplayName:  Name  of  the  table  relation  as  displayed  in  the 
Designer and it is not saved to the project file. If no name is given, the display 
name and the unique name are identical. 
pszKeyField: Key field of the child table, multiple key fields can be added as 
tab separated list 
pszParentKeyField: Key field  of  the parent table, multiple key fields can be 
added as tab separated list 
Return Value: 
Error code 
Hints: 
See the hints in chapter "4.5. Printing Relational Data". Before using the call, 
the parent and child table must be passed with LlDbAddTable(). 
Example: 
See chapter "4.7.1. Direct Print and Export From the Designer". 
See also: 
LlDbAddTable,  LlDbAddTableSortOrder,  LlPrintDbGetCurrentTable,  LlPrint-
DbGetCurrentTableSortOrder, LlPrintDbGetCurrentTableRelation 
LlDbAddTableSortOrder 
Syntax: 
INT LlDbAddTableSortOrder(HLLJOB hJob, LPCTSTR pszTableID,  
LPCTSTR pszSortOrderID, LPCTSTR pszSortOrderDisplayName); 
Task: 
Defines  available sort  orders for  the tables  added  via LlDbAddTable().  Each 
sorting  has  its  unique  ID  that  can  be  queried  using 
LlPrintDbGetCurrentTableSortOrder() at print time.  
Parameter: 
hJob: List & Label job handle 
pszTableID: Table ID to which this sort order applies. Must be identical to the 
ID passed in LlDbAddTable(). 
pszSortOrderID:  Unique  ID  of  the  table  sort  order.  It  is  returned  by 
LlPrintDbGetCurrentTableSortOrder() at print time. 
pszSortOrderDisplayName: Name of the table sort order as displayed in the 
Designer.  If  no name is  given,  the  display  name  and the unique name  are 
identical. 
API Reference 
118 
Return Value: 
Error code 
Hints: 
See the hints in chapter "4.5. Printing Relational Data". Before using the call, the table 
must be passed with LlDbAddTable(). 
Example: 
HLLJOB hJob; 
hJob = LlJobOpen(0); 
LlDbAddTable(hJob, "Orders", NULL); 
LlDbAddTableSortOrder(hJob, "Orders", "Name ASC", "Name [+]"); 
<... etc ...> 
LlJobClose(hJob); 
See also: 
LlDbAddTable,  LlDbAddTableRelation,  LlPrintDbGetCurrentTable,  LlPrint-
DbGetCurrentTableSortOrder, LlPrintDbGetCurrentTableRelation 
LlDbAddTableSortOrderEx 
Syntax: 
INT LlDbAddTableSortOrderEx(HLLJOB hJob, LPCTSTR pszTableID,  
LPCTSTR pszSortOrderID, LPCTSTR pszSortOrderDisplayName 
LPCTSTR pszField); 
Task: 
Defines available  sort  orders  for the tables added via  LlDbAddTable(). Each 
sorting  has  its  unique  ID  that  can  be  queried  using 
LlPrintDbGetCurrentTableSortOrder() at print time. Additionally the fields that 
are relevant for the sorting can be passed separated by tabs for further use in 
the function LlGetUsedIdentifiers(). 
Parameter: 
hJob: List & Label job handle 
pszTableID: Table ID to which this sort order applies. Must be identical to the 
ID passed in LlDbAddTable(). 
pszSortOrderID:  Unique  ID  of  the  table  sort  order.  It  is  returned  by 
LlPrintDbGetCurrentTableSortOrder() at print time. 
pszSortOrderDisplayName: Name of the table sort order as displayed in the 
Designer.  If  no  name  is  given, the display  name and  the  unique  name  are 
identical. 
pszField: List of fields that are relevant for the sorting (separated by tabs) if 
they should be regarded in the function LlGetUsedIdentifiers(). 
API Reference 
119 
Return Value: 
Error code 
Hints: 
See the hints in chapter "4.5. Printing Relational Data". Before using the call, 
the table must be passed with LlDbAddTable(). 
Example: 
HLLJOB hJob; 
hJob = LlJobOpen(0); 
LlDbAddTable(hJob, "Orders", NULL); 
LlDbAddTableSortOrderEx(hJob, "Orders", "Name ASC", "Name [+]",  
"Orders.Name"); 
<... etc ...> 
LlJobClose(hJob); 
See also: 
LlDbAddTableSortOrder,  LlDbAddTable, LlDbAddTableRelation, LlPrintDbGet-
CurrentTable,  LlPrintDbGetCurrentTableSortOrder,  LlPrintDbGetCurrentTable-
Relation 
LlDbSetMasterTable 
Syntax: 
INT LlDbSetMasterTable(HLLJOB hJob, LPCTSTR pszTableID); 
Task: 
If the master data is passed as variables, List & Label needs to know which 
table is the "master" table in order to be able to offer the suitable sub-tables in 
the  table  structure  window.  If  you  set  the  master  table  name  using  this 
method, all tables related to this table can be inserted at the root level of the 
report container object. 
Parameter: 
hJob: List & Label job handle 
pszTableID:  ID  of  the  table  which  is  used  as the  "master"  table.  Must  be 
identical to the ID passed in LlDbAddTable(). 
Return Value: 
Error code 
Hints: 
See the hints in chapter "4.5. Printing Relational Data". Before using the call, the table 
must be passed with LlDbAddTable(). 
API Reference 
120 
Example: 
HLLJOB hJob; 
hJob = LlJobOpen(0); 
LlDbAddTable(hJob, "Orders", NULL); 
LlDbSetMasterTable(hJob, "Orders"); 
<... etc ...> 
LlJobClose(hJob); 
See also: 
LlDbAddTable,  LlDbAddTableRelation,  LlPrintDbGetCurrentTable,  LlPrint-
DbGetCurrentTableSortOrder, LlPrintDbGetCurrentTableRelation 
LlDebugOutput 
Syntax: 
void LlDebugOutput (INT nIndent, LPCTSTR pszText); 
Task: 
Prints the text in the debug window of the Debwin Tool or – depending on the 
parameter passed to LlSetDebug() - to the log file. 
Parameter: 
nIndent: Indentation of the following line(s) 
pszText: Text to be printed 
Hints: 
The indentation is very handy for tracing calls to sub-procedures, but you need 
to make sure that every call with an indentation of +1 is matched by a call 
with the indentation of -1! 
Example: 
HLLJOB hJob; 
LlSetDebug(LL_DEBUG_CMBTLL); 
LlDebugOutput(+1,"Get version number:"); 
hJob = LlJobOpen(0); 
v = LlGetVersion(VERSION_MAJOR); 
LlJobClose(hJob); 
LlDebugOutput(-1,"...done"); 
prints the following to the debug screen: 
Get version number: 
@LlJobOpen(0)=1 
@LlGetVersion(1)=16 
@LlJobClose(1) 
...done 
See also: 
LlSetDebug, Debwin 
Documents you may be interested
Documents you may be interested