home *** CD-ROM | disk | FTP | other *** search
/ PC World Komputer 1997 May / Pcwk0597.iso / borland / cb / setup / cbuilder / data.z / BTSCONST.PAS < prev    next >
Pascal/Delphi Source File  |  1997-02-28  |  13KB  |  348 lines

  1. //---------------------------------------------------------------------------
  2. // Borland C++Builder
  3. // Copyright (c) 1987, 1997 Borland International Inc.  All Rights Reserved.
  4. //---------------------------------------------------------------------------
  5. // Btsconst.pas
  6. //
  7. // VCL Class Browser
  8. //---------------------------------------------------------------------------
  9. unit BtsConst;
  10.  
  11. interface
  12.  
  13. const
  14.  
  15. { Version }
  16.  
  17.   BtsVersion      = '3.0';
  18.  
  19. { File Names }
  20.  
  21.   fnConfig        = 'BTS.INI';
  22.   fnBtsBmp        = 'BTS.BMP';
  23.   fnStatLook      = 'STATLOOK.INI';
  24.   fnUserList      = 'USERLIST.INI';
  25.   fnBtsDown       = 'BTSDOWN.TXT';
  26.   fnBugData       = 'BUGDATA.DB';
  27.   fnAdminLib      = 'BTSADMIN.DLL';
  28.  
  29. { Table & Lookup Section Names }
  30.  
  31.   tnBugData       = 'BUGDATA';
  32.   tnAudit         = 'AUDIT';
  33.   tnStatus        = 'STATUS';
  34.   tnCategory      = 'CATEGORY';
  35.   tnPriority      = 'PRIORITY';
  36.   tnUser          = 'USER';
  37.   tnProduct       = 'PRODUCT';
  38.   tnOutline       = 'OUTLINE';
  39.   tnPrgrmrs       = 'PRGRMRS';
  40.   tnGroup         = 'GROUP';
  41.   tnFieldMap      = 'FIELDMAP';
  42.   tnEspBugs       = 'ESPBUGS';
  43.   tnDeleted       = 'DLTDBUGS';
  44.   tnHowFound      = 'HOWFOUND';
  45.   tnResolve       = 'RESOLVE';
  46.   tnVerify        = 'VERIFY';
  47.   tnCouncil       = 'COUNCIL';
  48.   tnBugList       = 'BUGLIST';
  49.   tnDBList        = 'DBLIST';
  50.   tnBugDatBase    = 'BUGDAT%2.2d';
  51.   tnAuditBase     = 'AUDIT%2.2d';
  52.   tnDescKeys      = 'DESCKEYS.DB';
  53.   pnTables        = 'TABLES\';
  54.  
  55. { Config & Lookup Sections }
  56.  
  57.   csConfig        = 'Config';
  58.   csBldSect       = 'Build Number';
  59.   csVerSect       = 'Version';
  60.   csFoundBy       = 'Found By';
  61.   csSubBy         = 'Submitted By';
  62.   csProgrammer    = 'Programmer';
  63.   csResStatMap    = 'Res_Status_Map';
  64.   csVerStatMap    = 'Ver_Status_Map';
  65.   csDefaults      = 'Defaults';
  66.   csCurrUsers     = 'Current Users';
  67.   csUserHist      = 'User History';
  68.   csDBNames       = 'Databases';
  69.   csPrinting      = 'Printing';
  70.   csStatLookMap   = 'StatLookMappings';
  71.  
  72. { Config Keys }
  73.  
  74.   ckVerLabel      = 'VersionLabel';
  75.   ckFontName      = 'FontName';
  76.   ckFontSize      = 'FontSize';
  77.   ckFontStyle     = 'FontStyle';
  78.   ckFormTop       = 'FormTop';
  79.   ckFormLeft      = 'FormLeft';
  80.   ckConfirm       = 'Confirmation';
  81.   ckAutoSave      = 'AutoSave';
  82.   ckNoQueryType   = 'NoQueryTypeAssist';
  83.   ckSuperAdmin    = 'SuperAdmin';
  84.   ckBugHunt       = 'Bughunt';
  85.   ckAuxTab        = 'AuxTab';
  86.   ckAuxTabDesc    = 'AuxTabDesc';
  87.   ckCount         = 'Count';
  88.   ckPrivDir       = 'PrivDir';
  89.   ckBtsDir        = 'BtsDir';
  90.   ckBtsName       = 'BtsName';
  91.   ckUserName      = 'UserName';
  92.   ckNetControlDir = 'NetControlDir';
  93.   ckNewBugNumber  = 'NewBugNumber';
  94.   ckDefaultRights = 'DefaultRights';
  95.   ckAttachDir     = 'AttachDir';
  96.   ckAdmin         = 'Admin';
  97.   ckIndOpen       = 'indOpen';
  98.   ckIndInEntry    = 'indInEntry';
  99.   ckIndNeedsRev   = 'indReview';
  100.   ckIndFromEsp    = 'indFromEsp';
  101.   ckIndRejected   = 'indRejected';
  102.   ckIndResolved   = 'indResolved';
  103.   ckIndFixed      = 'indFixed';
  104.   ckTablePW       = 'FormPos';
  105.   ckLocalTestDir  = 'LocalTestDir';
  106.   ckRequireLeaf   = 'RequireLeafNode';
  107.   ckDisplayOtl    = 'DisplayOutline';
  108.   ckAssignTester  = 'AssignTester';
  109.   ckDefQA         = 'DefaultQA';
  110.   ckDefRD         = 'DefaultR&D';
  111.   ckFieldSize     = 'Fieldsize';
  112.   ckUsePlusBuild  = 'UsePlusBuild';
  113.  
  114. { Dialog Strings (mostly) }
  115.  
  116.   SInitIdapi      = 'Initializing BDE';
  117.   SOpenTables     = 'Opening Tables';
  118.   SLoadingForm    = 'Loading forms';
  119.   SDeletingBug    = 'Deleting Bug';
  120.   SAllBugs        = 'All Bugs';
  121.   SNoFileName     = 'No Filename specified';
  122.   SNewBugInit     = 'Initializing new bug';
  123.   SNetName        = 'NetName';
  124.   SResIn          = 'Resolved in ';
  125.   SResolution     = 'Resolution';
  126.   SBugSave        = 'Saving bug';
  127.   SUpdating       = 'Updating...';
  128.   SLocked         = 'Locked';
  129.   SSelectPri      = 'Select Priority';
  130.   SSelectCat      = 'Select Category';
  131.   SSelectArea     = 'Select Area';
  132.   SSelectRes      = 'Select Resolution';
  133.   SSelectProd     = 'Select Product';
  134.   SViewAtPri      = 'View bugs at or above priority';
  135.   SViewAtCat      = 'View bugs at or above category';
  136.   SViewArea       = 'View bugs in program area';
  137.   SViewRes        = 'View bugs with Resolution';
  138.   SViewProd       = 'View bugs of Product type';
  139.   SResComCap      = ' Comments';
  140.   SPrinting       = 'Printing';
  141.   SDelNewQuery    = 'Delete unfinished bug?';
  142.   SDeleteQuery    = 'Delete this bug?';
  143.   SCancelQuery    = 'Cancel Changes?';
  144.   SRebuildQuery   = 'Rebuild word index?';
  145.   SSaveQuery      = 'Record has been changed.  Save changes?';
  146.   SFinishBug      = 'Finish this new bug before starting another.';
  147.   SGotoBug        = 'Goto Bug';
  148.   SBugNumLbl      = 'Bug Number:';
  149.   SGotoRec        = 'Goto Record';
  150.   SRecNoLbl       = 'Record Number:';
  151.   SLocateValue    = 'Locate Value';
  152.   SLocateField    = '"%s" Value:';
  153.   SLocateNoMatch  = '"%s" not found';
  154.   SRecNotFound    = 'Record not found';
  155.   SResPage        = '&Resolve';
  156.   SESPPage        = 'E&SP';
  157.   SFromESPCap     = 'Bugs from ESP';
  158.   SNoResInfo      = 'No resolution info.';
  159.   SBlankQuery     = 'Query is blank';
  160.   SShellExecErr   = 'ShellExec Error: ';
  161.   SFileNotFound   = 'File not found: ';
  162.   SNoAssocApp     = 'No application associated with this file extension';
  163.   SBuildIndex     = 'Building word index';
  164.   SQuery          = 'Query';
  165.   SMessage        = 'Message';
  166.   SQuerySect      = 'Queries';
  167.   SUntitledQuery  = 'Untitled Query';
  168.   SQueryName      = 'Query Name:';
  169.   SQNameQueryCap  = 'Enter Query Name';
  170.   SEnterFileName  = 'Enter FileName';
  171.   SUpdateTabPath  = 'Path to table with list of bug numbers:';
  172.   SEditComment    = 'Edit Comment';
  173.   SViewComment    = 'View Comment';
  174.   SNoQueryName    = 'Query must have a name';
  175.   SRunningQuery   = 'Running Query';
  176.   SNoQryAutoSave  = 'NoQueryAutoSave';
  177.   SEspSetup       = 'Setting up ESP Review form';
  178.   SSystemDownCap  = 'System Down Message';
  179.   SSelectDBCap    = 'Select a Database';
  180.   SDestDBPrompt   = 'Destination Database:';
  181.   SXferMessage    = 'Transfering Record(s)';
  182.   SInvFldName     = 'Invalid field name';
  183.   SNoQryLocate    = 'Locate not supported on a query result';
  184.   SNoNewValue     = 'New value not specified';
  185.   SChgAllConfirm  = 'Blank old value will change all records, is this OK?';
  186.   SSystemDisabled = 'System is now disabled'#13#10'Delete BTSDOWN.TXT to re-enable';
  187.   SFileHandlesLow = 'Ran out of file handles creating this form, '+
  188.                     'Add "File Handles  = 100" to NET.CFG to avoid problems';
  189.   SXferAgainErr   = 'Use ''Transfer Current'' first to select a target Database';
  190.   SGuestMsg       = 'As a guest of this BTS system, you can view bug'+
  191.                     'reports but you cannot modify or enter bug reports.';
  192.   SCurrBugInvalid = 'Current record is no longer valid.'#13#10+
  193.                     'Now viewing all bugs';
  194.   STransferMsg    = 'This command will transfer all the records in the current '+
  195.                     'working set to another database.  Do you want to do this?';
  196.   SBatUpateMsg    = 'Proceed with batch update?';
  197.  
  198. { Misc. String Constants }
  199.  
  200. const
  201.   CR              = #13;
  202.   LF              = #10;
  203.   ESC             = #27;
  204.   CRLF            = CR+LF;
  205.   MinAudRecNo     = Low(Smallint) + 1;
  206.   MaxAudRecNo     = High(Smallint);
  207.   SDash           = ' - ';
  208.   SSpace          = ' ';
  209.   SUnderbar       = '_';
  210.   SDots           = '..';
  211.   SEmptyStr       = '';
  212.   exBugNo         = '_BN';
  213.   exCurRes        = '_CR';
  214.   exCurVer        = '_CV';
  215.   SNone           = 'None';
  216.   STrue           = 'TRUE';
  217.   SYes            = 'YES';
  218.   SOldValue       = 'Old Value:'#13#10;
  219.   SNewValue       = #13#10'New Value:'#13#10;
  220.   SSeeComment     = 'See Comment';
  221.   SSeeField       = 'See Field';
  222.   SConfigFile     = 'ConfigFile';
  223.   SIndex          = 'Index';
  224.   SSubjectID      = 'SubjectID';
  225.   SSubject        = 'Subject';
  226.   SRoot           = 'Root';
  227.   SBatPath        = 'BatPath';
  228.   SBlank          = 'BLANK';
  229.   SNotBlank       = 'NOT BLANK';
  230.   SGroup          = 'Group';
  231.   SNotResolved    = 'Not Resolved';
  232.   SReserveHandles = 'ReserveFileHandles';
  233.   SRequireNetID   = 'RequireNetID';
  234.   SLogin          = 'Login: %s %s';
  235.   SLogout         = '%s Logout: %s %s';
  236.   SMaxWinVer      = 'MaxWinVer';
  237.   SLocalTestDir   = 'Local Test Directory';
  238.   SCopyAttach     = 'Copy Attachment';
  239.   SFileName       = 'File Name';
  240.   SCurrentUsers   = 'Current Users';
  241.   SDBLongDesc     = '&%d) Database Description';
  242.   SDBShortDesc    = 'DBDESC%d';
  243.   SPlaceHolder    = 'Place Holder';
  244.  
  245. { Range Strings }
  246.  
  247.   SBugs           = '%s bugs';
  248.   SOpen           = 'Open';
  249.   SPriGTCap       = ', Priority >= ';
  250.   SCatGTCap       = ', Category >= ';
  251.   SOpenPriCap     = 'Open'+SPriGTCap+' %s';
  252.   SOpenCatCap     = 'Open'+SCatGTCap+' %s';
  253.   SOpenAsgnArea   = 'Assigned Bugs in Area - %s';
  254.   SOpenArea       = 'Open Bugs in Area - %s';
  255.   SByAreaCap      = 'All Bugs in Area - %s';
  256.   SResByArea      = 'Resolved Bugs in Area - %s';
  257.   SAsgnCap        = 'Open, Assigned to %s';
  258.   SSubBy          = 'All bugs submitted by %s';
  259.   SOpenProdCap    = 'Open, Product = %s';
  260.   SResWithRes     = 'Resolved Bugs with Resolution = %s';
  261.   SResSubByCap    = 'Resolved bugs submitted by %s';
  262.   SReOpened       = 'Re-Opened Bugs assigned to %s';
  263.  
  264. { Error Strings }
  265.  
  266.   SCopyError      = 'Error copying file (%d)';
  267.   SUnknownUser    = 'Cannot determine network name';
  268.   SBadSysCfgFile  = 'Bad or missing system config file: ';
  269.   SRecNotLocked   = 'Record not locked';
  270.   SInvalidBugSave = 'Saved bug information is invalid, updates not written';
  271.   SResComSave     = 'Invalid resolution link';
  272.   SAuditWriteErr  = 'Error updating audit trail, changes not saved';
  273.   SStatLookErr    = 'Error reading static lookup section: [%s]';
  274.   SNoStatMapping  = 'Could not determine new status from resolution';
  275.   SNoRecords      = 'No matching records';
  276.   SVerNotBlank    = 'Cannot blank resolution, verification already entered';
  277.   SNoResolution   = 'Bug has not been Resolved';
  278.   SCantGetBugNo   = 'Error getting next bug number';
  279.   SBadOutline     = 'Could not read outline table';
  280.   SInitNewBug     = 'Could not initialize new bug';
  281.   SMissingConfig  = 'Cannot find config file: ';
  282.   SSystemDown     = 'System is down for maintenance';
  283.   SPasteError     = 'Bug Paste only allowed on a new bug';
  284.   SNoDeletedTab   = 'Deleted bug table is missing';
  285.   SNotNeedReview  = 'Bug is not set to "Needs Review"';
  286.   SInvalidField   = 'Invalid %s value: %s';
  287.   SCantFindTables = 'Cannot find BTS Tables in ';
  288.   SInvalidBtsDir  = 'Invalid BTS Directory: ';
  289.   SCantBeBlank    = '%s cannot be blank';
  290.   SMissingAttach  = 'Missing Attachment: %s';
  291.   SRights1        = 'Insufficient Rights:'#10#13'You do not have the "';
  292.   SRights2        = '" rights that are required to perform this operation';
  293.   SConfigInit     = 'Config file not initialized';
  294.   SMustAddComment = 'Must add a comment before rejecting bug';
  295.   SNoEspBugRec    = 'No linked record in ESPBUGS';
  296.   SNeedEspReview  = 'Bug must first be processed through ESP Review';
  297.   SHandleErr      = 'Insufficient file handles to run safely.'#13#10+
  298.                     'Required: %d, Available %d'#13#10+
  299.                     'Add FILE HANDLES = 100 to your NET.CFG file';
  300.   SClipFormat     = 'PasteBug called with wrong clipboard format';
  301.   SOpSysVer       = 'Unsupported Operating System Version: %f';
  302.   SInvChgList     = 'Invalid Changelist state';
  303.   SStatUpdErr     = 'Error updating [%s] section of STATLOOK.INI from %s table.'#13#10'Message: %s';
  304.   SAlreadyExists  = '%s already exists';
  305.   SInvalidDBDesc  = 'Invalid DB Description: %s';
  306.   SXferKeyViol    = 'Bug# %d already exists in destination database';
  307.   SXferAborted    = 'Batch transfer aborted';
  308.   SUpdateFailed   = 'One or more records could not be updated';
  309.   SLeafNodeReq    = 'Must select leaf node from outline';
  310.   SNotSupported   = 'Not Supported';
  311.   SLoadError      = 'Error loading %s [%d]';
  312.   SBatchRange     = 'Cannot update a range based working set';
  313.  
  314. { Query Stuff }
  315.  
  316. type
  317.   TQueryDataType = (qdBugData, qdResolution, qdVerification, qdAudit, qdLookup);
  318.   TQueryFlags = set of TQueryDataType;
  319.  
  320. { User Rights }
  321.  
  322. type
  323.   TUserRightsElement = (
  324.       urEntry,            {"E"}
  325.       urDirectEntry,      {"D"}
  326.       urResolve,          {"R"}
  327.       urVerify,           {"V"}
  328.       urAssign,           {"G"}
  329.       urEdit,             {"I"}
  330.       urAdmin,            {"A"}
  331.       urReview);          {"W"}
  332.   TUserRights = set of TUserRightsElement;
  333.  
  334. const
  335.   urAllRights = [urEntry..urReview];
  336.   SRightsChars = 'EDRVGIAW';  { order must match enums }
  337.   SRights : array [urEntry..urReview] of PChar = (
  338.     'Bug Entry','Direct Entry','Resolve','Verify',
  339.     'Assign','Edit','Admin','Review');
  340.  
  341.   UserSects: array[1..3] of PChar = (csFoundBy, csSubBy, csProgrammer);
  342.   UserCnts: array[1..3] of Integer = (0, 0, 0);
  343.   RightChars: array[1..3] of Char = ('E', 'V', 'R');
  344.  
  345. implementation
  346.  
  347. end.
  348.