Archive | Delphi RSS for this section

Backup dados SQLite no celular

Código apra realizar backups do banco de dados SQLite diretamente no celular

backup.Database := TPath.Combine(TPath.GetDocumentsPath, ‘banco_dados.db’);
conexao.Close;
backup.DestDatabase := ‘/storage/sdcard0/banco_dadosl.db’;
backup.backup;
ShowMessage(‘Backup Concluido’);

Acessando os valores selecionados de um TCXGrid

Olá

hoje vamos um exemplo simples para recuperar os valores de células selecionadas e adicioná-las a um TMemo

GetColumnByFieldName(‘NomeDaColuna’).Index ->Pesquisa a coluna no grid e retorna o indice dessa coluna;
ViewData.DataController.GetSelectedCount -> retorna o total de linhas selecionadas
ViewData.DataController.GetSelectedRowIndex(I) -> retorna o indice da linha usando o indice da coluna selecionada
ViewData.Records[Row].Values[Indice_coluna] -> Posiciona a linha retorna o  valor da coluna;

procedure ValoreSelecionados();
var
  I : Integer;
  Selecionados: Integer;
  Row : Integer;
begin
  Memo1.Clear;
  Selecionados := tblDados.ViewData.DataController.GetSelectedCount;
  for I := 0 to Selecionados - 1 do
  begin
    Row := tblDados.ViewData.DataController.GetSelectedRowIndex(I);
    Memo1.Lines.Add(tblDados.ViewData.Records[Row].Values[tblDados.GetColumnByFieldName('Nome').Index]);
  end;
end;

Até

Trabalhando em modo desconectado com UniDAC

Modo desconectado é uma forma de se tralhar com banco de dados sem manter a conexão  FULL TIME aberta ou seja, a conexão é aberta somente no momento em quem uma transação é requerida e fechada imediatamente apos a transação ser concluída.

Em sistemas onde a aplicação é divida em 3 ou mais camadas, esse tipo de transação é muito utilizado, como em php, onde a conexão é aberta somente no momento da execução do script logo apos é encerrada e o servidor web é desconectado do banco de dados.

Quando trabalhamos com Delphi não temos esse conceito, pois a aplicação se mantem conectada durante toda o tempo em que o sistema persiste em memória, mantendo um conexão aberta para cada instancia da aplicação,

Quando se tem o numero necessário de licenças de banco de dados, isso não é problema, mas quando esse numero de licenças é limitado, e teremos mais clientes conectadas ao bando do que licenças adquiridas, trabalhar em modo desconectado se torna uma boa opção.

para usarmos esse processo com unidac devemos setar:

TCustomDAConnection.Close ou TCustomDAConnection.Disconnect
TCustomDAConnection.Options.DisconnectedMode para True.

pronto, agora as conexões são abertas e fechadas automaticamente, o que permite que o próximo usuário concorrente posa usar a mesma licença de banco de dados.

mas lembre-se que caso o sistema abra a conexão explicitamente com TCustomDAConnection.Open ou TCustomDAConnection.Connect

a conexão ficara aberta;
Mais informações podem ser lidas em:  http://www.devart.com/sdac/docs/index.html?work_disconnectmode.htm

Exportar um TcxDBPivotGrid para Excel

esse é curtinho:

add a Uses cxExportPivotGridLink, Winapi.ShellAPI;

crie a procedure:

procedure ExportarParaExcel()
begin
try
if dlgSalvar.Execute() then
begin

cxExportPivotGridToExcel(dlgSalvar.FileName, pivFluxo);

if Application(‘Deseja visualizar o arquivo’, ‘Exportação’, mbYesNo) = mryes then
begin
ShellExecute(Handle, ‘open’, pchar(dlgSalvar.FileName), nil, nil, SW_SHOW);
end;
end;
except
on E: Exception do
ShowMessage(‘Ocorreram erros na exportação: ‘ + sLineBreak + E.Message);
end;

End;

Exportar um TcxDBTreeList para Excel

Olá

Nesse post vou demonstrar como exportar registro de um grid para um arquivo do tipo .XLS

add a uses

cxTLExportLink, Winapi.ShellAPI;

crie a procedure:

procedure ExportarParaExcel()
begin
cxExportTLToExcel(‘grid.xls’, dbeBalancete, True, True, True);
ShellExecute(Handle, ‘open’, pchar(‘grid.xls’), nil, nil, SW_SHOW);
End;

dica rápida: Exportar tcxGrid para excel

Olá

Nesse post vou demonstrar como exportar registro de um grid para um arquivo do tipo .XLS

add a uses

cxGridExportLink, Winapi.ShellAPI;

crie a procedure:

procedure ExportarParaExcel()
begin
ExportGridToXLS(‘grid.xls’,Grade, False);
ShellExecute(Handle, ‘open’, pchar(‘grid.xls’), nil, nil, SW_SHOW);
End;

tente também:

  ExportGridToHTML();
      ExportGridToFile();
      ExportGridToXML();
      ExportGridToText();
      ExportGridToXLSX();

Como chamar o arquivo de ajuda no Delphi XE2

Olá, mais uma dica para ajudar ao meus queridos alunos.

No Delphi XE2 temos uma classe para chamar arquivos de ajuda tipo chm

para isso addicione Vcl.HtmlHelpViewer a Uses do programa.
e no evento keypress do form chame o helpcontext da applicação

veja o exemplo

——————————————————————————

unit UntHelp;

interface

uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls,
Vcl.HtmlHelpViewer;

type
TForm1 = class(TForm)
procedure FormCreate(Sender: TObject);
procedure FormKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
private
{ Private declarations }
public
{ Public declarations }
end;

var
Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
   Application.HelpFile := ‘help.chm’; // o arquivo de ajuda deve estar no mesmo diretório do executável
   KeyPreview:= True;
end;

procedure TForm1.FormKeyUp(Sender: TObject; var Key: Word; Shift: TShiftState);
begin
if key = VK_F1 then
  begin
    Application.HelpContext(50);
  end;
end;

end.

Seguir

Obtenha todo post novo entregue na sua caixa de entrada.

Junte-se a 715 outros seguidores