lazarus


        ¿Cómo activar el total de páginas en un listado creado con lazreport?. Vamos con una entrada cortita y sencilla. Tienes el problema de que en Lazreport el total de páginas siempre lo muestra como 0. Esta es la solución. 1.- File / Report Options …               2.- Activar “Two pass report”.                     Espero que os sirva de ayuda. 🙂

Activar total páginas en lazreport


Ocultar campo según una condición dada. Veamos el problema es el siguiente: Tengo un listado en el que muestra una cabecera y un detalle, en el detalle tengo un campo que, dependiendo de una condición, estará visible o no. Para ello lo primero que voy a hacer es evaluar el campo que condiciona la visibilidad del campo “Concepto” y en el evento del listado “OnGetValue” añadiré el siguiente código: Código Fuente del programa. Evalúo si el parámetro es “MOSTRAR_CONCEPTO” Si el campo es null Indico que “MOSTRAR_CONCEPTO” vale 1 Si no “MOSTRAR_CONCEPTO” vale 0 procedure Tfrmfacturas.frFacturaGetValue(const ParName: String; var ParValue: […]

Ocultar columnas o campo en LazReport (Lazarus)



    Cómo enviar emails desde [Lazarus] con Indy 10.   Incluimos las unidades necesarias para el proyecto. En este caso las unidades imprescindibles para que funcione el envío de email usando TSL son: IdSMTP IdMessage IdAttachmentFile IdIOHandler IdIOHandlerStack IdSSL IdSSLOpenSSL IdExplicitTLSClientServerBase La unidad quedaría así: uses Classes, SysUtils,Windows,DBGrids,Graphics,ZAbstractRODataset,ZDataset,DB,WinSock, IdSMTP,IdMessage,IdAttachmentFile, IdIOHandler, IdIOHandlerStack, IdSSL,IdSSLOpenSSL, IdExplicitTLSClientServerBase;uses Classes, SysUtils,Windows,DBGrids,Graphics,ZAbstractRODataset,ZDataset,DB,WinSock, IdSMTP,IdMessage,IdAttachmentFile, IdIOHandler, IdIOHandlerStack, IdSSL,IdSSLOpenSSL, IdExplicitTLSClientServerBase;   Creando el procedimiento para enviar los correos electrónicos. procedure EnviarMensaje( sUsuario, sClave, sHost, sAdjunto, sAsunto, sDestino, sMensaje,sRemitente: String; sPuerto:integer ); var SMTP: TIdSMTP; Mensaje: TIdMessage; Adjunto: TIdAttachmentFile; IdSSLIOHandlerSocket: TIdSSLIOHandlerSocketOpenSSL; begin // Creamos el componente de conexión con el […]

Enviar email desde Lazarus smtp indy


¿Cómo insertar un combo dentro de un dbgrid? unit provincia;   {$mode objfpc}{$H+}   interface   uses Classes, SysUtils, db, FileUtil, Forms, Controls, Graphics, Dialogs, DbCtrls, DBGrids, Grids;   type   { TForm4 }   TForm4 = class(TForm) DBGrid1: TDBGrid; DBLookupComboBox1: TDBLookupComboBox; DBNavigator1: TDBNavigator; dsProvincia: TDataSource; dsPais: TDataSource; procedure DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); private { private declarations } public { public declarations } end;   var Form4: TForm4;   implementation   {$R *.lfm}   { TForm4 }   procedure TForm4.DBGrid1DrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState); begin if (gdFocused […]

Insertar un Combo de otra tabla en un DBGrid




Cómo ordenar una columna en Lazarus Código fuente para ordenar la columna de un dbgrid al pulsar sobre el título de la cabecera. Comprobará si estaba ordenado de forma ascendente, si es así ordenará la columna de forma descendente y si está ordenado de forma descendente ordenará la columna de forma ascendente. Con solo cuatro líneas de código lo tenemos desarrollado. ¡¡¡OjO!!! hay que añadir la clase “ZAbstractRODataset”. También he puesto un label para saber los registros que tenemos y el registro en el que nos encontramos, cambiando cada vez que cambie el datasource.   unit Unit1;   {$mode objfpc}{$H+} […]

Ordenar columna ascendente/descentente dbgrid