Veränderungen vorgenommen, so dass sich das Programm auch für andere Belege und Ordner eignet
This commit is contained in:
@@ -19,7 +19,7 @@
|
|||||||
<ResourceBaseClass Value="Form"/>
|
<ResourceBaseClass Value="Form"/>
|
||||||
<IsVisibleTab Value="True"/>
|
<IsVisibleTab Value="True"/>
|
||||||
<TopLine Value="205"/>
|
<TopLine Value="205"/>
|
||||||
<CursorPos X="18" Y="251"/>
|
<CursorPos X="53" Y="234"/>
|
||||||
<UsageCount Value="29"/>
|
<UsageCount Value="29"/>
|
||||||
<Loaded Value="True"/>
|
<Loaded Value="True"/>
|
||||||
<LoadedDesigner Value="True"/>
|
<LoadedDesigner Value="True"/>
|
||||||
@@ -81,123 +81,123 @@
|
|||||||
<JumpHistory Count="30" HistoryIndex="29">
|
<JumpHistory Count="30" HistoryIndex="29">
|
||||||
<Position1>
|
<Position1>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="206" Column="9" TopLine="166"/>
|
<Caret Line="102" TopLine="46"/>
|
||||||
</Position1>
|
</Position1>
|
||||||
<Position2>
|
<Position2>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="195" Column="61" TopLine="166"/>
|
<Caret Line="104" TopLine="48"/>
|
||||||
</Position2>
|
</Position2>
|
||||||
<Position3>
|
<Position3>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="193" Column="21" TopLine="153"/>
|
<Caret Line="229" Column="112" TopLine="209"/>
|
||||||
</Position3>
|
</Position3>
|
||||||
<Position4>
|
<Position4>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="194" Column="19" TopLine="153"/>
|
<Caret Line="23" Column="29" TopLine="4"/>
|
||||||
</Position4>
|
</Position4>
|
||||||
<Position5>
|
<Position5>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="193" Column="21" TopLine="154"/>
|
<Caret Line="29" Column="80"/>
|
||||||
</Position5>
|
</Position5>
|
||||||
<Position6>
|
<Position6>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="195" Column="11" TopLine="154"/>
|
<Caret Line="75" Column="128"/>
|
||||||
</Position6>
|
</Position6>
|
||||||
<Position7>
|
<Position7>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="210" Column="29" TopLine="176"/>
|
<Caret Line="106" Column="12" TopLine="66"/>
|
||||||
</Position7>
|
</Position7>
|
||||||
<Position8>
|
<Position8>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="52" Column="26" TopLine="12"/>
|
<Caret Line="108" Column="26" TopLine="68"/>
|
||||||
</Position8>
|
</Position8>
|
||||||
<Position9>
|
<Position9>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="124" Column="32" TopLine="69"/>
|
<Caret Line="305" Column="38" TopLine="252"/>
|
||||||
</Position9>
|
</Position9>
|
||||||
<Position10>
|
<Position10>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="128" Column="15" TopLine="98"/>
|
<Caret Line="306" Column="6" TopLine="252"/>
|
||||||
</Position10>
|
</Position10>
|
||||||
<Position11>
|
<Position11>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="56" Column="27" TopLine="16"/>
|
<Caret Line="268" Column="157" TopLine="253"/>
|
||||||
</Position11>
|
</Position11>
|
||||||
<Position12>
|
<Position12>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="111" Column="28" TopLine="69"/>
|
<Caret Line="316" Column="106" TopLine="254"/>
|
||||||
</Position12>
|
</Position12>
|
||||||
<Position13>
|
<Position13>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="124" Column="23" TopLine="70"/>
|
<Caret Line="75" Column="30" TopLine="50"/>
|
||||||
</Position13>
|
</Position13>
|
||||||
<Position14>
|
<Position14>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="97" TopLine="79"/>
|
<Caret Line="233" Column="73" TopLine="112"/>
|
||||||
</Position14>
|
</Position14>
|
||||||
<Position15>
|
<Position15>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="216" Column="3" TopLine="209"/>
|
<Caret Line="235" Column="73" TopLine="155"/>
|
||||||
</Position15>
|
</Position15>
|
||||||
<Position16>
|
<Position16>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="102" TopLine="46"/>
|
<Caret Line="340" TopLine="261"/>
|
||||||
</Position16>
|
</Position16>
|
||||||
<Position17>
|
<Position17>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="104" TopLine="48"/>
|
<Caret Line="48" Column="25" TopLine="18"/>
|
||||||
</Position17>
|
</Position17>
|
||||||
<Position18>
|
<Position18>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="229" Column="112" TopLine="209"/>
|
<Caret Line="143" Column="45" TopLine="102"/>
|
||||||
</Position18>
|
</Position18>
|
||||||
<Position19>
|
<Position19>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="23" Column="29" TopLine="4"/>
|
<Caret Line="284" Column="33" TopLine="235"/>
|
||||||
</Position19>
|
</Position19>
|
||||||
<Position20>
|
<Position20>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="29" Column="80"/>
|
<Caret Line="193" TopLine="153"/>
|
||||||
</Position20>
|
</Position20>
|
||||||
<Position21>
|
<Position21>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="75" Column="128"/>
|
<Caret Line="192" Column="3" TopLine="190"/>
|
||||||
</Position21>
|
</Position21>
|
||||||
<Position22>
|
<Position22>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="106" Column="12" TopLine="66"/>
|
<Caret Line="58" Column="27" TopLine="18"/>
|
||||||
</Position22>
|
</Position22>
|
||||||
<Position23>
|
<Position23>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="108" Column="26" TopLine="68"/>
|
<Caret Line="187" Column="15" TopLine="114"/>
|
||||||
</Position23>
|
</Position23>
|
||||||
<Position24>
|
<Position24>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="305" Column="38" TopLine="252"/>
|
<Caret Line="194" Column="15" TopLine="121"/>
|
||||||
</Position24>
|
</Position24>
|
||||||
<Position25>
|
<Position25>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="306" Column="6" TopLine="252"/>
|
<Caret Line="200" Column="15" TopLine="127"/>
|
||||||
</Position25>
|
</Position25>
|
||||||
<Position26>
|
<Position26>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="268" Column="157" TopLine="253"/>
|
<Caret Line="240" Column="15" TopLine="167"/>
|
||||||
</Position26>
|
</Position26>
|
||||||
<Position27>
|
<Position27>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="316" Column="106" TopLine="254"/>
|
<Caret Line="250" Column="15" TopLine="177"/>
|
||||||
</Position27>
|
</Position27>
|
||||||
<Position28>
|
<Position28>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="75" Column="30" TopLine="50"/>
|
<Caret Line="256" Column="15" TopLine="183"/>
|
||||||
</Position28>
|
</Position28>
|
||||||
<Position29>
|
<Position29>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="233" Column="73" TopLine="112"/>
|
<Caret Line="262" Column="15" TopLine="189"/>
|
||||||
</Position29>
|
</Position29>
|
||||||
<Position30>
|
<Position30>
|
||||||
<Filename Value="scanner.pas"/>
|
<Filename Value="scanner.pas"/>
|
||||||
<Caret Line="235" Column="73" TopLine="155"/>
|
<Caret Line="331" Column="10" TopLine="265"/>
|
||||||
</Position30>
|
</Position30>
|
||||||
</JumpHistory>
|
</JumpHistory>
|
||||||
</ProjectSession>
|
</ProjectSession>
|
||||||
|
|||||||
23
scanner.pas
23
scanner.pas
@@ -55,7 +55,6 @@ type
|
|||||||
procedure TypeSelectorChange(Sender: TObject);
|
procedure TypeSelectorChange(Sender: TObject);
|
||||||
function ExportConfig(): string;
|
function ExportConfig(): string;
|
||||||
function ExportOptions(dropDown: TComboBox): string;
|
function ExportOptions(dropDown: TComboBox): string;
|
||||||
procedure UpdateTypes();
|
|
||||||
procedure UpdateFolder();
|
procedure UpdateFolder();
|
||||||
procedure MixLocations(d1: TComboBox; d2: TComboBox; d3: TComboBox);
|
procedure MixLocations(d1: TComboBox; d2: TComboBox; d3: TComboBox);
|
||||||
private
|
private
|
||||||
@@ -97,6 +96,8 @@ begin
|
|||||||
num := num +1;
|
num := num +1;
|
||||||
fname := 'scan_';
|
fname := 'scan_';
|
||||||
if (num<10) then fname:=fname+'0';
|
if (num<10) then fname:=fname+'0';
|
||||||
|
if (num<100) then fname:=fname+'0';
|
||||||
|
if (num<1000) then fname:=fname+'0';
|
||||||
fname := fname+IntToStr(num)+'.jpg';
|
fname := fname+IntToStr(num)+'.jpg';
|
||||||
until not FileExists(folder+fname);
|
until not FileExists(folder+fname);
|
||||||
fpSystem('scanimage -x '+IntToStr(s.x)+' -y '+IntToStr(s.y)+' --mode Color --resolution '+r+' --format jpeg > "'+folder+fname+'"');
|
fpSystem('scanimage -x '+IntToStr(s.x)+' -y '+IntToStr(s.y)+' --mode Color --resolution '+r+' --format jpeg > "'+folder+fname+'"');
|
||||||
@@ -141,7 +142,8 @@ end;
|
|||||||
|
|
||||||
function TScanForm.ExportConfig(): string;
|
function TScanForm.ExportConfig(): string;
|
||||||
begin
|
begin
|
||||||
Result := 'types:' + ExportOptions(TypeSelector) + #13;
|
Result := 'folder:'+BaseFolder.Caption+#13;
|
||||||
|
Result := Result + 'types:' + ExportOptions(TypeSelector) + #13;
|
||||||
Result := Result + 'items:' + ExportOptions(Product) + #13;
|
Result := Result + 'items:' + ExportOptions(Product) + #13;
|
||||||
MixLocations(Origin, Destination, Stop);
|
MixLocations(Origin, Destination, Stop);
|
||||||
Result := Result + 'locations:' + ExportOPtions(Origin) + #13;
|
Result := Result + 'locations:' + ExportOPtions(Origin) + #13;
|
||||||
@@ -190,7 +192,6 @@ end;
|
|||||||
procedure TScanForm.CalendarChange(Sender: TObject);
|
procedure TScanForm.CalendarChange(Sender: TObject);
|
||||||
begin
|
begin
|
||||||
date := Calendar.DateTime;
|
date := Calendar.DateTime;
|
||||||
UpdateTypes();
|
|
||||||
TypeSelector.Enabled := True;
|
TypeSelector.Enabled := True;
|
||||||
UpdateFolder();
|
UpdateFolder();
|
||||||
end;
|
end;
|
||||||
@@ -232,7 +233,7 @@ begin
|
|||||||
finally
|
finally
|
||||||
config.Free;
|
config.Free;
|
||||||
end;
|
end;
|
||||||
ScanThread.Create(ScanButton,BaseFolder.Caption+FolderName.Caption+'/',size,Resolution.Caption,Preview,DropButton);
|
ScanThread.Create(ScanButton,BaseFolder.Caption+'/'+FolderName.Caption+'/',size,Resolution.Caption,Preview,DropButton);
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TScanForm.StopChange(Sender: TObject);
|
procedure TScanForm.StopChange(Sender: TObject);
|
||||||
@@ -270,7 +271,7 @@ var
|
|||||||
line: String;
|
line: String;
|
||||||
index: integer;
|
index: integer;
|
||||||
begin
|
begin
|
||||||
BaseFolder.Caption:=GetEnvironmentVariable('HOME') + '/Documents/Quittungen/';
|
BaseFolder.Caption:=GetEnvironmentVariable('HOME');
|
||||||
filename := GetEnvironmentVariable('HOME') + '/.config/belegscanner.conf';
|
filename := GetEnvironmentVariable('HOME') + '/.config/belegscanner.conf';
|
||||||
lines := TStringList.Create;
|
lines := TStringList.Create;
|
||||||
try
|
try
|
||||||
@@ -278,6 +279,11 @@ begin
|
|||||||
for index := 0 to lines.Count-1 do
|
for index := 0 to lines.Count-1 do
|
||||||
begin
|
begin
|
||||||
line:=lines.Strings[index];
|
line:=lines.Strings[index];
|
||||||
|
if line.StartsWith('folder:') then
|
||||||
|
begin
|
||||||
|
line:=line.Substring(7);
|
||||||
|
BaseFolder.Caption:=line;
|
||||||
|
end;
|
||||||
if line.StartsWith('types:') then
|
if line.StartsWith('types:') then
|
||||||
begin
|
begin
|
||||||
line := line.Substring(6);
|
line := line.Substring(6);
|
||||||
@@ -324,7 +330,7 @@ procedure TScanForm.UpdateFolder();
|
|||||||
var
|
var
|
||||||
tx: string;
|
tx: string;
|
||||||
begin
|
begin
|
||||||
tx := FormatDateTime('YYYY', date) + '/' + FormatDateTime('YYYY-MM-DD', date) + ' - ';
|
tx := FormatDateTime('YYYY-MM-DD', date) + ' - ';
|
||||||
if (Product.Enabled and (Product.Tag > 0) and not( Product.Text = '') and not (Product.Text = 'Produkt')) then
|
if (Product.Enabled and (Product.Tag > 0) and not( Product.Text = '') and not (Product.Text = 'Produkt')) then
|
||||||
tx := tx + Product.Text + ' von ';
|
tx := tx + Product.Text + ' von ';
|
||||||
if (TypeSelector.Tag > 0) then
|
if (TypeSelector.Tag > 0) then
|
||||||
@@ -338,9 +344,4 @@ begin
|
|||||||
FolderName.Caption := tx;
|
FolderName.Caption := tx;
|
||||||
end;
|
end;
|
||||||
|
|
||||||
procedure TScanForm.UpdateTypes();
|
|
||||||
begin
|
|
||||||
|
|
||||||
end;
|
|
||||||
|
|
||||||
end.
|
end.
|
||||||
|
|||||||
Reference in New Issue
Block a user