BasicSource: Difference between revisions
From Pickwiki
Jump to navigationJump to search
m link fix |
IanMcGowan (talk | contribs) Add link to FLAVA utility (soon to be a SUBR) |
||
(2 intermediate revisions by the same user not shown) | |||
Line 14: | Line 14: | ||
*[[Date Conversion With OCONV]] - converting internal date for output | *[[Date Conversion With OCONV]] - converting internal date for output | ||
*[[Hexadecimal Conversion]] - converting to/from hexadecimal | *[[Hexadecimal Conversion]] - converting to/from hexadecimal | ||
*[[RemovePerformance]] - a more efficient way to loop over a dynamic array | |||
=== General Utilities (Alphabetically) === | === General Utilities (Alphabetically) === | ||
Line 48: | Line 49: | ||
*[[Find.Inode]] - A utility to locate filename of inode, using Pick Basic. | *[[Find.Inode]] - A utility to locate filename of inode, using Pick Basic. | ||
*[[FindUnusedAtt]] - A utility to find the null attributes in a file. So you can USE them! | *[[FindUnusedAtt]] - A utility to find the null attributes in a file. So you can USE them! | ||
*[[FLAVA]] - A (hopefully) portable routine to figure out the flavour of Pick | |||
* [[GET.REMOTE.IP]] - D3[[/Linux]] source to obtain IP address of client. | * [[GET.REMOTE.IP]] - D3[[/Linux]] source to obtain IP address of client. | ||
*[[GetFileInfo]] - A wrapper around the O[[/S]] fstat command, or a [[PerlVersionOfFstat]]. Returns information about a unix file in a convenient format. | *[[GetFileInfo]] - A wrapper around the O[[/S]] fstat command, or a [[PerlVersionOfFstat]]. Returns information about a unix file in a convenient format. | ||
Line 85: | Line 87: | ||
*[[Row2Col II]] - An alternative version to transpose an array | *[[Row2Col II]] - An alternative version to transpose an array | ||
*[[SBProcessSearch]] - Search for a string in SB+ process file with a simple list output. | *[[SBProcessSearch]] - Search for a string in SB+ process file with a simple list output. | ||
*[[SCI.XLS.RECALL]] - Dump a flat delimited file (produced with TO DELIM perhaps) to SpreadsheetML XML format | |||
*[[SCI.XLSX.RECALL]] - Dump a flat delimited file to Open XML native Excel XLSX format | |||
*[[ShellSort|Shell sort]] - a sort that uses Donald Shell's algorithm | *[[ShellSort|Shell sort]] - a sort that uses Donald Shell's algorithm | ||
*[[ShowLocks]] - Universe utility to show locks by name (requires up to date STAT.FILE) | *[[ShowLocks]] - Universe utility to show locks by name (requires up to date STAT.FILE) |
Latest revision as of 17:16, 12 September 2019
HomePage>>SourceCode>>BasicSource
General Notes
- General format HintsAndTips
- Put <PRE> around code sections to turn off wiki formatting for that section
- Watch out for trailing "\" at the end of a line - even within a <PRE> block it appears to smush lines together
Discussions about Basic programming
- Loop Debates - a discussion of different ways to loop in Pick/Basic programs
- Sorting - An overview of the various sorts out there
- CodingStandards - Some modest proposals around Basic coding standards
- Date Conversion With ICONV - converting output date for internal storage
- Date Conversion With OCONV - converting internal date for output
- Hexadecimal Conversion - converting to/from hexadecimal
- RemovePerformance - a more efficient way to loop over a dynamic array
General Utilities (Alphabetically)
- AMVdefine_AE - Alternate Editor utility to define associated multivalues for amvedit
- AMVedit_AE - Alternate Editor utility to edit associated multivalues
- ASORT - Sorts Associated Multivalues
- BarCode128 - Print a 128 barcode in BASIC
- BFormat - A utility to format basic code
- BFind - A utility to find strings in selected file(s).
- BPTest - A utility to run BASIC code from the command line
- BROWSE.FOR.FILE - Subroutine which allows user to move up and down through DOS tree and pick a file, from Universe code
- Build.Inode.Xref - Builds the INODE.XREF file, run once in each account
- CallHTTP - sample code for CallHTTP
- CallHTTPWithSSL - an attempt to retrieve a simple web page over HTTPS using CallHTTP and SSL
- CAM_AE - Alternate Editor utility to convert PICK.VARIABLES to Camelcase
- Chead - "See header" QM utility to show information about compiled code.
- Checksum - Program to calculate the checksum of a given file item. It uses the original R83 method of doing so.
- Compare - To see the changes in two records - usually program code.
- ConvCase - To convert the case of items (usually programs)
- Cruise - Display entire contents of records, using DICT entries for labels and conversions
- CSEQ - To see part of a large directory file (useful for checking .csv files)
- CSV2ARRAY - Function to convert a CSV to a dynamic array (also can change columns to attributes)
- CSV2FIELDS - Another subroutine to convert a CSV string to a dynamic array
- CTRLFIC - To periodically check the Unidata files in level 1 overflow (from a list or just for given file) or level 2 using Unidata "guide" and "checkover" commands.
- DateUtility - utility to do various date conversions such as ISO8601 and RFC1123
- DumpSqlLdr - Dump fields to flat file for import into Oracle using sql*ldr
- DumpRecall - Dump a query to excel or other formats
- EM - A utility to enable editing of multiple MVdatabase records or individual ones in client-server Emacs in X(-windows).
- ENCRYPT64 - sample code using Universe's ENCRYPT function.
- Dynamic Array Sort Sort a multivalued dynamic array
- FieldInput - Generalised Input subroutine that handles various types of input in a somewhat intelligent manner. EG passwords, dates, time, patterns, lists, and so on. Using this can reduce your source code size quite a lot.
- FileInfo - UniVerse utility to show information about a file using FILEINFO()
- FileStatus - UniVerse utility to show information about a file using STATUS
- Find.Inode - A utility to locate filename of inode, using Pick Basic.
- FindUnusedAtt - A utility to find the null attributes in a file. So you can USE them!
- FLAVA - A (hopefully) portable routine to figure out the flavour of Pick
- GET.REMOTE.IP - D3/Linux source to obtain IP address of client.
- GetFileInfo - A wrapper around the O/S fstat command, or a PerlVersionOfFstat. Returns information about a unix file in a convenient format.
- GetKey - Acts like keycode() in QM - returns a single character for any key pressed.
- GetLineStack - An input subroutine that allows editing with the arrow keys. Works with vt100 and wyse50.
- GetNameList - PICK BASIC program to build list of names based on either EXACT or SOUNDEX principles. Uses '*' and '...' for first name likeness.
- GetOsInfo - UD program to get the O/S information (date/time/size/privileges) for items in a DIR type file
- Getptr - UniVerse version of GETPTR function in UniData
- HeapSort - Two routines to create a heap then return items from the heap in sorted order
- HelpForUniverse - Displays like the Unidata help because the Universe one splodges the screen when at the console in NT.
- HMAC - Sample Unidata / Universe Basic code to produce an HMAC-MD5 hash
- HollDump - Does a Hollerith (fixed column) style dump from a UV file into &HOLD&
- HollLoad - Reads a fixed-width file from &HOLD& into a UV file - and can handle multivalue fields.
- InputWait - Duplicates in Universe the INPUT...WAITING functionality available in Unidata
- IsoWeekNum - returns the ISO week number on being given an external format date
- KLIST - Utility for listing records in files with formatted m/vs and s/vs + date conversion with selection/search
- LFormat - A utility to print source code with line-up bars.
- LineEDitor - A version of UniData's AE with embedded full page editor, change and search history/redo capability, and lots of other good stuff.
- List.Path.Readu - Basic program to list.readu with pathnames instead.
- LOOP-ON - Replacement on Universe for the R83 verb LOOP-ON
- MAC_AE - Alternate Editor utility to convert Camelcase to PICK.VARIABLES
- MakeDict - Program to allow command line dictionary creation - works for UniVerse and QM
- MakeXml - Generates XML using standard dictionaries, particularly I-types. It will also generate DTD, XSD, and XSL definitions. Started in UniData, mostly done in UniVerse, and has also been done in QM from Ladybridge.
- MD5Hash - Sample Unidata / Universe Basic code to produce an MD5 hash
- MenuProgram - A simple menu interpreter
- ParseXML - Sample Unidata / Universe Basic code to parse an XML text file
- Pick.to.HTML - Example code of building a HTML table in Pick and then launching it through Accuterm
- Pivot - Quickly view totals and counts when looking at a new file
- PrePass - Duplicates the $DEFINE $IFDEF compiler stuff that Universe and Unidata have
- ProgramToListAlgorithms - Program to list algorithms that are stored in &PARTFILES&, VOC, and the parts themselves.
- Purge.Bad.Chars - Remove chars from 0 to 31, and 128 to 250 from a user-supplied file
- QM.Sort.Item - Subroutine to use new QM SORT() mechanism to sort associated multivalues
- QuickSort - uniVerse BASIC implementation of the quick sort algorithm
- Resize.Stats - Checks all processes on system (HPUX 11.0 & Universe9.6) for resize activity and displays progress and estimated completions. Great for determining when phantoms are expected to finish.
- ReturnSourceCode - Reads the GLOBAL.CATDIR opcode item on Universe, and extracts the source path off it's end
- Row2Col - transpose a variable's "rows" (fields) into "columns" (values), and back again.
- Row2Col II - An alternative version to transpose an array
- SBProcessSearch - Search for a string in SB+ process file with a simple list output.
- SCI.XLS.RECALL - Dump a flat delimited file (produced with TO DELIM perhaps) to SpreadsheetML XML format
- SCI.XLSX.RECALL - Dump a flat delimited file to Open XML native Excel XLSX format
- Shell sort - a sort that uses Donald Shell's algorithm
- ShowLocks - Universe utility to show locks by name (requires up to date STAT.FILE)
- Sudoku - To play a sudoku game
- StarDate - a function for converting from timestamp to stardate
- SvnWrapper - Wrapper for Linux 'svn' command for UniVerse; with 'release' format support.
- TclStack - a TCL stacker/development environment. Works better with GetLineStack, but not required.
- TCL.II - pre-processes @sentence, parsing TCL.II components for you to handle later
- Trace - A utility that allows you to trace from a Proc to a Verb to a Basic program, interactive.
- TreeTraversal - Finding the ultimate parent or all children of a particular node
- Try - Another utility to run BASIC code from the command line.
- UdtOra - A program to call a perl script to run sql statements and parse the resultset
- UdtService - A program that is a phantom service to spawn other Udt phantoms
- URLEncode - A function to URL encode any text.
- UV.EM - A utility based upon UV.VI that works with Emacs (see also Emacs Lisp code page).
- WLISTU - Allows sorting the LISTU output by Date by Time, or also by PID
- XML Output Utility - Extract an Unidata file in XML format using or not dictionary, with criteria of selection or not.
Special Purpose Utilities
- uuidgen - Unibasic wrapper around python UUID module.
- uvcron - C program to allow cron to execute Universe jobs.
- InfoLease utilities, programs of interest only to customers of http://www.idsgrp.com (maybe :-)
- Datatel utilities, specific to users of Datatel's Benefactor and Colleague apps
- CedarvilleDownload, DOWNLOAD is a utility that creates extracts from U2 in a variety of formats
Source Code Repositories
- https://bitbucket.org/slestak/u2-tools (Steve Romanow)
- https://bitbucket.org/foss4mv (FOSS4MV)