Skip to content

Instantly share code, notes, and snippets.

View Pasquina's full-sized avatar

Milan Vydareny Pasquina

  • Chicago, Illinois
View GitHub Profile
@Pasquina
Pasquina / TUDFUtil.pas
Created November 8, 2020 22:26
TUDFUtil Class Definition
TUDFUtil = class
private
protected
class procedure BinToHex(var ASource, ATarget: IBDataArray; const ASourceByteCount: integer; var ASourceOffset: integer; var ATargetOffset: integer);
// Binary to Hexadecimal control routine
class procedure HexToBin(var ASource, ATarget: IBDataArray; const ATargetByteCount: integer; var ASourceOffset: integer; var ATargetOffset: integer);
// Hexadecimal to Binary control routine
public
class procedure GUIDtoANSI(var ASource, ATarget: IBDataArray); // from 128-bit number to formatted hexadecimal
class procedure ANSItoGUID(var ASource, ATarget: IBDataArray); // from formatted hexadecimal to 128-bit number
@Pasquina
Pasquina / IBGUIDExample.pas
Created November 8, 2020 22:29
Interbase GUID Usage Example
/* Domain definitions */
CREATE DOMAIN ENTITYNAME AS VARCHAR(36) CHARACTER SET UTF8 NOT NULL;
CREATE DOMAIN ENTRYINACTIVE AS BOOLEAN
DEFAULT False NOT NULL;
CREATE DOMAIN ID_GUID AS CHAR(16) CHARACTER SET OCTETS NOT NULL;
/* Table: CM_CLIENTMASTER, Owner: SYSDBA */
CREATE TABLE CM_CLIENTMASTER
(
CM_ID ID_GUID NOT NULL,
@Pasquina
Pasquina / UtilGUID_Def.SQL
Created November 8, 2020 22:31
UtilGUID External Function Declarations
DECLARE EXTERNAL FUNCTION GUIDFROMANSI
CHAR(38) CHARACTER SET ISO8859_1
RETURNS CHAR(16) CHARACTER SET OCTETS FREE_IT
ENTRY_POINT 'GUIDfromANSI' MODULE_NAME 'UtilGUID';
DECLARE EXTERNAL FUNCTION GUIDTOANSI
CHAR(16) CHARACTER SET OCTETS
RETURNS CHAR(38) CHARACTER SET ISO8859_1 FREE_IT
ENTRY_POINT 'GUIDtoANSI' MODULE_NAME 'UtilGUID';
@Pasquina
Pasquina / DelphiFileStreamMemo.pas
Created April 4, 2021 21:30
Sample FileStream writing TMemo lines
{ Saving from TMemo.Lines does not honor the TrailingLineBreak option of
TStrings. }
procedure TfSavingMemoLines.aSaveLinesExecute(Sender: TObject);
var
LMode: Word; // in case we need to create the file
LFileStream: TFileStream; // handle the writing
begin
if not FileExists(LogFileName) then // test for file exists
LMode := fmCreate // not present need to create