📄 cmqbpas.pas
字号:
unit CMQBPas;
// **************************************************************************
// **************************************************************************
// **************************************************************************
// MQSeries IBM library ported for Delphi by Dinko Miljak
// e-mail: dinmil@flashmail.com
// version 0.0.4 2001-05-07
// **************************************************************************
// **************************************************************************
// **************************************************************************
(**********************************************************************)
(* *)
(* IBM MQSeries for Windows NT and Windows 2000 *)
(* *)
(* MODULE NAME: CMQBC *)
(* *)
(* DESCRIPTION: Declarations for MQ Administration Interface *)
(* *)
(**********************************************************************)
(* @START_COPYRIGHT@ *)
(* Licensed Materials - Property of IBM *)
(* *)
(* 0784726, 5639-B43 MQSeries for Windows NT and Windows 2000 *)
(* *)
(* (C) Copyright IBM Corporation 1994, 2000. *)
(* *)
(* Status: Version 5 Release 2 *)
(* @END_COPYRIGHT@ *)
(**********************************************************************)
(* *)
(* FUNCTION: This file declares the functions and named *)
(* constants for the MQ administration interface *)
(* (MQAI). *)
(* *)
(* PROCESSOR: C *)
(* *)
(**********************************************************************)
interface
uses SysUtils, CMQPas;
const
(*********************************************************************)
(* Values Related to Specific Functions *)
(*********************************************************************)
(* Create-Bag Options for mqCreateBag *)
MQCBO_NONE = $00000000;
MQCBO_USER_BAG = $00000000;
MQCBO_ADMIN_BAG = $00000001;
MQCBO_COMMAND_BAG = $00000010;
MQCBO_SYSTEM_BAG = $00000020;
MQCBO_LIST_FORM_ALLOWED = $00000002;
MQCBO_LIST_FORM_INHIBITED = $00000000;
MQCBO_REORDER_AS_REQUIRED = $00000004;
MQCBO_DO_NOT_REORDER = $00000000;
MQCBO_CHECK_SELECTORS = $00000008;
MQCBO_DO_NOT_CHECK_SELECTORS = $00000000;
(* Buffer Length for mqAddString and mqSetString *)
MQBL_NULL_TERMINATED = -1;
(* Item Type for mqInquireItemInfo *)
MQIT_INTEGER = 1;
MQIT_STRING = 2;
MQIT_BAG = 3;
(*********************************************************************)
(* Values Related to Most Functions *)
(*********************************************************************)
(* Integer Selectors for Object Attributes *)
(* See MQIA_* values in CMQC *)
(* See MQIACF_* values in CMQCFC *)
(* See MQIACH_* values in CMQCFC *)
(* Character Selectors for Object Attributes *)
(* See MQCA_* values in CMQC *)
(* See MQCACF_* values in CMQCFC *)
(* See MQCACH_* values in CMQCFC *)
(* Handle Selectors *)
MQHA_FIRST = 4001;
MQHA_BAG_HANDLE = 4001;
MQHA_LAST_USED = 4001;
MQHA_LAST = 6000;
(* Limits for Selectors for Object Attributes *)
MQOA_FIRST = 1;
MQOA_LAST = 6000;
(* Integer System Selectors *)
MQIASY_FIRST = -1;
MQIASY_CODED_CHAR_SET_ID = -1;
MQIASY_TYPE = -2;
MQIASY_COMMAND = -3;
MQIASY_MSG_SEQ_NUMBER = -4;
MQIASY_CONTROL = -5;
MQIASY_COMP_CODE = -6;
MQIASY_REASON = -7;
MQIASY_BAG_OPTIONS = -8;
MQIASY_LAST_USED = -8;
MQIASY_LAST = -2000;
(* Special Selector Values *)
MQSEL_ANY_SELECTOR = -30001;
MQSEL_ANY_USER_SELECTOR = -30002;
MQSEL_ANY_SYSTEM_SELECTOR = -30003;
MQSEL_ALL_SELECTORS = -30001;
MQSEL_ALL_USER_SELECTORS = -30002;
MQSEL_ALL_SYSTEM_SELECTORS = -30003;
(* Special Index Values *)
MQIND_NONE = -1;
MQIND_ALL = -2;
(* Bag Handles *)
MQHB_UNUSABLE_HBAG = -1;
MQHB_NONE = -2;
(*********************************************************************)
(* Simple Data Types *)
(*********************************************************************)
type
MQHBAG = MQLONG;
PMQHBAG = ^MQHBAG;
(*********************************************************************)
(* Short Names for Functions *)
(*********************************************************************)
(*
MQADDIQ mqAddInquiry
MQADDIN mqAddInteger
MQADDST mqAddString
MQBG2BF mqBagToBuffer
MQBF2BG mqBufferToBag
MQCLRBG mqClearBag
MQCNTIT mqCountItems
MQCRTBG mqCreateBag
MQDELBG mqDeleteBag
MQDELIT mqDeleteItem
MQEXEC mqExecute
MQGETBG mqGetBag
MQINQBG mqInquireBag
MQINQIN mqInquireInteger
MQINQIT mqInquireItemInfo
MQINQST mqInquireString
MQPAD mqPad
MQPUTBG mqPutBag
MQSETIN mqSetInteger
MQSETST mqSetString
MQTRIM mqTrim
MQTRNBG mqTruncateBag
*)
(*********************************************************************)
(* mqAddInquiry Function -- Add an Inquiry Item to Bag *)
(*********************************************************************)
procedure mqAddInquiry (
Bag : MQHBAG; (* Bag handle *)
Selector : MQLONG; (* Attribute selector *)
var CompCode: MQLONG; (* Completion code *)
var Reason : MQLONG); (* Reason code qualifying CompCode *)
cdecl;
external 'mqm.dll' name 'mqAddInquiry';
(*********************************************************************)
(* mqAddInteger Function -- Add Integer to Bag *)
(*********************************************************************)
procedure mqAddInteger (
Bag : MQHBAG; (* Bag handle *)
Selector : MQLONG; (* Item selector *)
ItemValue : MQLONG; (* Item value *)
var CompCode: MQLONG; (* Completion code *)
var Reason : MQLONG); (* Reason code qualifying CompCode *)
cdecl;
external 'mqm.dll' name 'mqAddInteger';
(*********************************************************************)
(* mqAddString Function -- Add String to Bag *)
(*********************************************************************)
procedure mqAddString (
Bag : MQHBAG; (* Bag handle *)
Selector : MQLONG; (* Item selector *)
BufferLength: MQLONG; (* Length of buffer *)
var Buffer : MQCHAR; (* Buffer containing item value *)
var CompCode: MQLONG; (* Completion code *)
var Reason : MQLONG); (* Reason code qualifying CompCode *)
cdecl;
external 'mqm.dll' name 'mqAddString';
(*********************************************************************)
(* mqBagToBuffer Function -- Convert Bag to PCF *)
(*********************************************************************)
procedure mqBagToBuffer (
OptionsBag : MQHBAG; (* Handle of options bag *)
DataBag : MQHBAG; (* Handle of data bag *)
BufferLength : MQLONG; (* Length of buffer *)
pBuffer : Pointer; (* Buffer to contain PCF *)
var DataLength: MQLONG; (* Length of PCF returned in buffer *)
var CompCode : MQLONG; (* Completion code *)
var Reason : MQLONG); (* Reason code qualifying CompCode *)
cdecl;
external 'mqm.dll' name 'mqBagToBuffer';
(*********************************************************************)
(* mqBufferToBag Function -- Convert PCF to Bag *)
(*********************************************************************)
procedure mqBufferToBag (
OptionsBag : MQHBAG; (* Handle of options bag *)
BufferLength: MQLONG; (* Length of buffer *)
Buffer : Pointer; (* Buffer containing PCF *)
DataBag : MQHBAG; (* Handle of bag to contain data *)
var CompCode: MQLONG; (* Completion code *)
var Reason : MQLONG); (* Reason code qualifying CompCode *)
cdecl;
external 'mqm.dll' name 'mqBufferToBag';
(*********************************************************************)
(* mqClearBag Function -- Delete All Items in Bag *)
(*********************************************************************)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -