Video



Script
--------------------------------------------------------------------------------------------------------
----->> On Startup
---------------------------------->> CRIAR O DESTINO DA PASTA
foundDBF = Folder.DoesExist(_SourceFolder .."\\System\\DataBase\\Images");
if not foundDBF then
Folder.Create(_SourceFolder .."\\System\\DataBase\\Images");
end


---------------------------------->> CRIAR O ARQUIVO DE BANCO DE DADOS
sDatabase = _SourceFolder.."\\System\\DataBase\\Registro.db"
sImagesFolder = _SourceFolder.."\\System\\DataBase\\Images"
tInfo_Selected = nil;
db = SQLite3.Open(sDatabase);
nLastError = Application.GetLastError();
if nLastError ~= SQLite3.OK then
Dialog.Message("Error de Apertura de Base de Datos", SQLite3.GetLastErrorString());
end


---------------------------------->> CRIAR A TABELA DB
SQLite3.Query(db,"CREATE TABLE Ussers (RecordID INTEGER  PRIMARY KEY,"
.."ID        TEXT,"
.."NOME      TEXT,"
.."DATA      TEXT,"
.."SEXO      TEXT,"
.."CPF       TEXT,"
.."TELEFONE  TEXT,"
.."CELULAR   TEXT,"
.."EMAIL     TEXT,"
.."ENDERECO  TEXT,"
.."NUMERO    TEXT,"
.."BAIRRO    TEXT,"
.."CIDADE    TEXT,"
.."UF        TEXT,"
.."CEP       TEXT,"
.."IMAGE     TEXT)")
SQLite3.Query(db, "CREATE TABLE Backup (RecordID INTEGER  PRIMARY KEY, Date TEXT, Path TEXT)");
Backup = false;
--------------------------------------------------------------------------------------------------------




--------------------------------------------------------------------------------------------------------
------------------------------------------>> Image do Cliente
------------------------------------------>> On Click
text = Input.GetText("Input2");
if text == ""or close == ""  then
Dialog.Message("Infor", "Você tem que editar o formulário", MB_OK, MB_ICONEXCLAMATION);
else

local strFolder = Application.LoadValue("SalvarLocalFolder", "AbrirLocalFolder");
if(strFolder == "")then
strFolder = Shell.GetFolder(SHF_MYDOCUMENTS);
end
local strFilter = "Arquivos de imagem(.png, .jpg, .bmp, .gif)|*.png;*.jpg;*.bmp;*.gif|";
local tbImg = Dialog.FileBrowse(true,"Localize Imagens",
strFolder,strFilter,"","",true,true);
if(tbImg)then
if(tbImg[1] ~= "CANCEL")then

local ext=String.SplitPath(tbImg[1]).Extension;
local newNome = Input.GetText("Input1")..""..ext

File.Copy(tbImg[1], sImagesFolder.."\\"..newNome, true, true, false, true, nil);
result = Input.GetText("Input2");
-------------------------_Converter Imagem_--------------------------------------------------
File.Run("convert.dll", "convert -resize 340x340 "..'"'..newNome..'"'.."  ".."   "..'"'..result..".png"..'"', "\\System\\DataBase\\Images\\", SW_HIDE, true);

local tblPath = String.SplitPath(tbImg[1]);
local strLastPath = tblPath.Drive..tblPath.Folder;
Application.SaveValue("SalvarLocalFolder", "AbrirLocalFolder",strLastPath);
	
error = Application.GetLastError();
if (error ~= 0) then
Dialog.Message("Error", _tblErrorMessages[error], MB_OK, MB_ICONEXCLAMATION);
end

Image.Load("Image1", sImagesFolder.."\\"..result..".png");

local delete = "System\\DataBase\\Images\\"
File.Delete(delete.."*bmp", false, false, false, false);
File.Delete(delete.."*jpg", false, false, false, false);
File.Delete(delete.."*gif", false, false, false, false);
end
end
end
--------------------------------------------------------------------------------------------------------





--------------------------------------------------------------------------------------------------------
------------------------------------------->> xButton1 nome Novo
------------------------------------------->> On Click
------------------------------------------->> Novo formulário
newData = true;
Image.Load("Image1", "AutoPlay\\Images\\PNG_1\\Usse.jpg");
for count = 2,13  do
Input.SetText("Input"..count, "");
ComboBox.SetText("ComboBox"..count, "");
end

ListBox.DeleteItem("ListBox1", LB_ALLITEMS);
Input.SetText("Input1", "1");
nRow = 0 ;
tInfo_Selected = SQLite3.QueryToTable(db, "Select * from Ussers", true)
for nRow = 1, tInfo_Selected.Rows do--------->> ID RecordID AUTO INCREMENTO 
ID = tInfo_Selected.Data[nRow]["ID"];
ID = String.ToNumber(ID)+1;
Input.SetText("Input1", ID);
end

xButton.SetVisible("xButton1", false);
xButton.SetVisible("xButton3", false);
xButton.SetVisible("xButton2", true);
xButton.SetVisible("xButton4", true);
--------------------------------------------------------------------------------------------------------





--------------------------------------------------------------------------------------------------------
------------------------------------------->> xButton2 nome Salvar
------------------------------------------->> On Click
------------------------------------------->> Salvar formulário

----------------------------------->> LISTAS DE INPUT
local       sID = Input.GetText("Input1")
local     sNOME = Input.GetText("Input2")
local     sDATA = Input.GetText("Input3")
local     sSEXO = ComboBox.GetText("ComboBox1")
local      sCPF = Input.GetText("Input4")
local sTELEFONE = Input.GetText("Input5")
local  sCELULAR = Input.GetText("Input6")
local    sEMAIL = Input.GetText("Input7")
local sENDERECO = Input.GetText("Input8")
local  sNUMERO  = Input.GetText("Input9")
local   sBAIRRO = Input.GetText("Input10")
local   sCIDADE = Input.GetText("Input11")
local       sUF = ComboBox.GetText("ComboBox2")
local      sCEP = Input.GetText("Input12")
local    sIMAGE = Image.GetFilename("Image1");

if newData then
SQLite3.Query(db, "INSERT INTO Ussers values(NULL, '"
..sID.."','"
..sNOME.."','"
..sDATA.."','"
..sSEXO.."','"
..sCPF.."','"
..sTELEFONE.."','"
..sCELULAR.."','"
..sEMAIL.."','"
..sENDERECO.."','"
..sNUMERO.."','"
..sBAIRRO.."','"
..sCIDADE.."','"
..sUF.."','"
..sCEP.."','"
..sIMAGE.."')");
nLastError = Application.GetLastError();
if nLastError ~= SQLite3.OK then
Dialog.Message("Error:" ..nLastError, SQLite3.GetLastErrorString());
sPesquisar()
else 
Dialog.TimedMessage("Ok", "dados salvos com sucesso.", 2000, MB_ICONINFORMATION);
end		
else
SQLite3.Query(db, "INSERT or REPLACE INTO Ussers values('"
..xData.."','"
..sID.."','"
..sNOME.."','"
..sDATA.."','"
..sSEXO.."','"
..sCPF.."','"
..sTELEFONE.."','"
..sCELULAR.."','"
..sEMAIL.."','"
..sENDERECO.."','"
..sNUMERO.."','"
..sBAIRRO.."','"
..sCIDADE.."','"
..sUF.."','"
..sCEP.."','"
..sIMAGE.."')");
nLastError = Application.GetLastError();
if nLastError ~= SQLite3.OK then
Dialog.Message("Erro:" ..nLastError, SQLite3.GetLastErrorString());
else
Dialog.TimedMessage("Ok", "dados salvos com sucesso.", 2000, MB_ICONINFORMATION);
sPesquisar()
end		
end

xButton.SetVisible("xButton1", true);
xButton.SetVisible("xButton3", true);
xButton.SetVisible("xButton2", false);
xButton.SetVisible("xButton4", false);
--------------------------------------------------------------------------------------------------------





--------------------------------------------------------------------------------------------------------
------------------------------------------->> xButton4 nome Cancelar
------------------------------------------->> On Click
------------------------------------------->> Cancelar formulário

xButton.SetVisible("xButton1", true);
xButton.SetVisible("xButton3", true);
xButton.SetVisible("xButton2", false);
xButton.SetVisible("xButton4", false);
--------------------------------------------------------------------------------------------------------





--------------------------------------------------------------------------------------------------------
------------------------------------------->> xButton3 nome Modificar
------------------------------------------->> On Click
------------------------------------------->> Modificar formulário

----------------------------------------------------------->> MODIFICAR
local xSel = ListBox.GetSelected("ListBox1");
if xSel ~= nil then
xData = ListBox.GetItemData("ListBox1", xSel[1]);
newData = false;
else
Dialog.TimedMessage(Erro, "Primeiro Selecione um nome", 2000, MB_ICONSTOP)
end	

xButton.SetVisible("xButton1", false);
xButton.SetVisible("xButton3", false);
xButton.SetVisible("xButton2", true);
xButton.SetVisible("xButton4", true);
--------------------------------------------------------------------------------------------------------





--------------------------------------------------------------------------------------------------------
------------------------------------------->> xButton5 nome Excluir
------------------------------------------->> On Click
------------------------------------------->> Excluir formulário
--------------------------------------------------------->> EXCLUIR
local xSel = ListBox.GetSelected("ListBox1");
if xSel ~= nil then
xData = ListBox.GetItemData("ListBox1", xSel[1]);
sDelete = Dialog.Message("Confirmação", "Você está prestes a excluir um registro de banco de dados. Essa ação não é reversível. Tem certeza de que deseja excluir este arquivo?", MB_YESNO, MB_ICONINFORMATION, MB_DEFBUTTON1);
if sDelete == 6 then
tSelected = ListBox.GetSelected("ListBox1");
if tSelected then
	nSelected = tSelected[1];--->> Obter o número selecionado da linha. Se nada for selecionado, não faça nada
	nData = String.ToNumber(ListBox.GetItemData("ListBox1", tSelected[1]));
	SQLite3.Query(db, "SELECT * From Ussers where RecordID = "..xData);
    SQLite3.Query(db, "DELETE FROM Ussers WHERE RecordID = "..xData);--->> Exclui a entrada do banco de dados
    newData = true;
	nLastError = Application.GetLastError();
	if nLastError ~= SQLite3.OK then
    Dialog.Message("Erro: " .. nLastError, SQLite3.GetLastErrorString());
	end
	end
	
ListBox.DeleteItem("ListBox1", tSelected[1]);
Image.Load("Image1", "AutoPlay\\Images\\Usse.jpg");
for count = 1,13  do
Input.SetText("Input"..count, "");
    end
    end
else
Dialog.TimedMessage(Erro, "Primeiro Selecione um nome", 2000, MB_ICONSTOP)
end	

--------------------------------------------------------------------------------------------------------





--------------------------------------------------------------------------------------------------------
------------------------------------------->> xButton5 nome Sair
------------------------------------------->> On Click
------------------------------------------->> Sair do Programa
Window.Close(Application.GetWndHandle(), CLOSEWND_TERMINATE);
--------------------------------------------------------------------------------------------------------




--------------------------------------------------------------------------------------------------------
------------------------------------------->> ListBox
------------------------------------------->> On Select
-----------------------------------------------------------------------------==
local xSel = ListBox.GetSelected("ListBox1");
if xSel then
local xData = ListBox.GetItemData("ListBox1", xSel[1]);
n = String.ToNumber(xData);
tInfo_Selected = SQLite3.QueryToTable(db, "SELECT * FROM Ussers WHERE RecordID ="..n, true)
for nRow = 1, tInfo_Selected.Rows do

Input.SetText("Input1",   tInfo_Selected.Data[nRow]["ID"]);
Input.SetText("Input2", tInfo_Selected.Data[nRow]["NOME"]);
Input.SetText("Input3", tInfo_Selected.Data[nRow]["DATA"]);
ComboBox.SetText("ComboBox1", tInfo_Selected.Data[nRow]["SEXO"]);
Input.SetText("Input4", tInfo_Selected.Data[nRow]["CPF"]);
Input.SetText("Input5", tInfo_Selected.Data[nRow]["TELEFONE"]);
Input.SetText("Input6", tInfo_Selected.Data[nRow]["CELULAR"]);
Input.SetText("Input7", tInfo_Selected.Data[nRow]["EMAIL"]);
Input.SetText("Input8", tInfo_Selected.Data[nRow]["ENDERECO"]);
Input.SetText("Input9", tInfo_Selected.Data[nRow]["NUMERO"]);
Input.SetText("Input10", tInfo_Selected.Data[nRow]["BAIRRO"]);
Input.SetText("Input11", tInfo_Selected.Data[nRow]["CIDADE"]);
ComboBox.SetText("ComboBox2", tInfo_Selected.Data[nRow]["UF"]);
Input.SetText("Input12", tInfo_Selected.Data[nRow]["CEP"]);
Image.Load("Image1", tInfo_Selected.Data[nRow]["IMAGE"]);

end
end
--------------------------------------------------------------------------------------------------------





--------------------------------------------------------------------------------------------------------
------------------------------------------->> Buscar Nome
------------------------------------------->> Input 13
------------------------------------------->> On Char
ListBox.DeleteItem("ListBox1", LB_ALLITEMS)
sPesquisar()
------------------------------------------->> Input 13
------------------------------------------->> On Focus
Image.Load("Image1", "AutoPlay\\Images\\PNG_1\\Usse.jpg");
for count = 1,13  do
Input.SetText("Input"..count, "");
ComboBox.SetText("ComboBox"..count, "");
end
--------------------------------------------------------------------------------------------------------

--------------------------------------------------------------------------------------------------------
----->> On Show
function sPesquisar()-------------------------->> Pesquisar por nome
ListBox.DeleteItem("ListBox1", LB_ALLITEMS)
tInfo_Selected = SQLite3.QueryToTable(db, "Select * from Ussers", true)
for nRow = 1, tInfo_Selected.Rows do
Pesquisar = {Input.GetText("Input13")};

for i, v in pairs (Pesquisar) do	
if (String.Find(tInfo_Selected.Data[nRow]["NOME"], v, 1, false) ~= -1) then
ListBox.AddItem("ListBox1", tInfo_Selected.Data[nRow]["NOME"], tInfo_Selected.Data[nRow]["RecordID"])
end
end
end 
end
--------------------------------------------------------------------------------------------------------