Topics   All   Mac OS X (Only)   Windows (Only)   Linux (Only, Not)   iOS (Only, Not)  
Components   Crossplatform Mac & Win   Server (Not)   Client   Old   Guides   Examples
New in version: 6.5   7.0   7.1   7.2   7.3   7.4   7.5   8.0   8.1   8.2    Statistic  

ImageCapture.requestScan

Starts a scan on selectedFunctionalUnit.

Component Version macOS Windows Server FileMaker Cloud FileMaker iOS SDK
ImageCapture 6.4 Yes No No No No

MBS( "ImageCapture.requestScan" )

Parameters

none

Result

Returns OK or error.

Description

Starts a scan on selectedFunctionalUnit.
If a progress dialog from our plugin is visible, the plugin will keep it updated with progress.

Please use ImageCapture.SetParameter to configure scanner before requesting the scan, e.g. for duplex.

Examples

Scan images:

# set parameters
Set Variable [$physicalWidth; Value:MBS("ImageCapture.GetParameter"; "physicalWidth")]
Set Variable [$physicalHeight; Value:MBS("ImageCapture.GetParameter"; "physicalHeight")]
Set Variable [$r; Value:MBS("ImageCapture.SetParameter"; "scanArea"; 0; 0; $physicalWidth; $physicalHeight)]
Set Variable [$r; Value:MBS("ImageCapture.SetParameter"; "documentType"; "USLetter")]
Set Variable [$r; Value:MBS("ImageCapture.SetParameter"; "documentName"; "Scan")]
Set Variable [$r; Value:MBS("ImageCapture.SetParameter"; "resolution"; 300)]
Set Variable [$r; Value:MBS("ImageCapture.SetParameter"; "bitDepth"; 8)]
Set Variable [$r; Value:MBS("ImageCapture.SetParameter"; "pixelDataType"; "RGB")]
Set Variable [$r; Value:MBS("ImageCapture.SetParameter"; "documentUTI"; "jpeg")]
Set Variable [$r; Value:MBS("ImageCapture.SetParameter"; "downloadsDirectory"; "temp")]
Set Variable [$p; Value:MBS( "ProgressDialog.Reset")]
Set Variable [$p; Value:MBS( "ProgressDialog.SetTitle"; "Scanning" )]
Set Variable [$p; Value:MBS( "ProgressDialog.SetBottomText"; "" )]
Set Variable [$p; Value:MBS( "ProgressDialog.SetTopText"; "Scan from Flatbet scanner." )]
Set Variable [$p; Value:MBS( "ProgressDialog.SetButtonCaption"; "Cancel" )]
Set Variable [$p; Value:MBS( "ProgressDialog.SetProgress"; -1 )]
Set Variable [$p; Value:MBS( "ProgressDialog.Show" )]
Set Variable [$r; Value:MBS("ImageCapture.requestScan")]
Set Variable [$p; Value:MBS( "ProgressDialog.Hide" )]
If [MBS("iserror")]
    Show Custom Dialog ["Failed start scan"; MBS("Text.RemovePrefix"; $r; "[MBS] ")]
    Exit Script []
End If
Set Variable [$Paths; Value:MBS("ImageCapture.ImagePaths")]
Set Variable [$Count; Value:ValueCount ( $Paths )]
Set Variable [$Index; Value:1]
Loop
    Set Variable [$Path; Value:GetValue($Paths; $index)]
    New Record/Request
    Set Field [Images::Image; MBS("Container.ReadFile"; $path)]
    Set Variable [$r; Value:MBS( "Files.Delete"; $Path )]
    Commit Records/Requests [No dialog]
    Set Variable [$Index; Value:$index + 1]
    Exit Loop If [$index > $count]
End Loop

Run scan with duplex:

# set parameters
Set Variable [ $physicalWidth ; Value: MBS("ImageCapture.GetParameter"; "physicalWidth") ]
Set Variable [ $physicalHeight ; Value: MBS("ImageCapture.GetParameter"; "physicalHeight") ]
Set Variable [ $r ; Value: MBS("ImageCapture.SetParameter"; "documentType"; "A4") ]
Set Variable [ $r ; Value: MBS("ImageCapture.SetParameter"; "documentName"; "Scan") ]
Set Variable [ $r ; Value: MBS("ImageCapture.SetParameter"; "resolution"; 300) ]
Set Variable [ $r ; Value: MBS("ImageCapture.SetParameter"; "bitDepth"; 8) ]
Set Variable [ $r ; Value: MBS("ImageCapture.SetParameter"; "pixelDataType"; "RGB") ]
Set Variable [ $r ; Value: MBS("ImageCapture.SetParameter"; "documentUTI"; "jpeg") ]
Set Variable [ $r ; Value: MBS("ImageCapture.SetParameter"; "downloadsDirectory"; "temp") ]
Set Variable [ $r ; Value: MBS("ImageCapture.SetParameter"; "duplexScanningEnabled"; 1) ]
Set Variable [ $r ; Value: MBS("ImageCapture.SetParameter"; "scanArea"; 0; 0; $physicalWidth; $physicalHeight) ]
Set Variable [ $p ; Value: MBS("ProgressDialog.Reset") ]
Set Variable [ $p ; Value: MBS("ProgressDialog.SetTitle"; "Scanning" ) ]
Set Variable [ $p ; Value: MBS("ProgressDialog.SetBottomText"; "" ) ]
Set Variable [ $p ; Value: MBS("ProgressDialog.SetTopText"; "Scan from Flatbet scanner." ) ]
Set Variable [ $p ; Value: MBS("ProgressDialog.SetButtonCaption"; "Cancel" ) ]
Set Variable [ $p ; Value: MBS("ProgressDialog.SetProgress"; -1 ) ]
Set Variable [ $p ; Value: MBS("ProgressDialog.Show" ) ]
Set Variable [ $r ; Value: MBS("ImageCapture.requestScan") ]
Set Variable [ $p ; Value: MBS("ProgressDialog.Hide" ) ]
If [ MBS("iserror") ]
    Show Custom Dialog [ "Failed start scan" ; MBS("Text.RemovePrefix"; $r; "[MBS] ") ]
    Exit Script [ Text Result: ]
End If
#
# read images
Pause/Resume Script [ Duration (seconds): ,1 ]
Set Variable [ $Paths ; Value: MBS("ImageCapture.ImagePaths") ]
If [ Length ( $Paths ) > 0 ]
    Set Variable [ $Count ; Value: ValueCount ( $Paths ) ]
    If [ $Count > 0 ]
        Set Variable [ $Index ; Value: 1 ]
        Loop
            Set Variable [ $Path ; Value: GetValue($Paths; $index) ]
            New Record/Request
            Set Field [ Images::Image ; MBS("Container.ReadFile"; $path) ]
            Set Variable [ $r ; Value: MBS( "Files.Delete"; $Path ) ]
            Commit Records/Requests [ With dialog: Off ]
            Set Variable [ $Index ; Value: $index + 1 ]
            Exit Loop If [ $index > $count ]
        End Loop
    End If
End If

See also

Example Databases


ImageCapture.requestOverviewScan   -   ImageCapture.requestSelectFunctionalUnit

Feedback: Report problem or ask question.




Links
MBS Xojo Chart Plugins