OpenLLM-France/wikimedia huggingface dataset:
# Delphi Programming/Statements

Note: there are some simplifications in the explanations below. Don't take anything too literally.
Most programming languages have the concept of a statement. A statement is a command that the programmer gives to the computer. For example:
This command has a verb ("WriteLn") and other details (what to print). In this case, the command "WriteLn" means "show on the screen," not "print on the printer." The programmer either gives the statement directly to the computer (by typing it while running a special program), or creates a text file with the command in it. You could create a file called "hi.txt", put the above command in it, and give the file to the computer.
If you have more than one command in the file, each will be performed in order, top to bottom. So the file could contain:
The computer will perform each of these commands sequentially. It's invaluable to be able to "play computer" when programming. Ask yourself, "If I were the computer, what would I do with these statements?" If you're not sure what the answer is, then you are very likely to write incorrect code. Stop and check the manual for the programming language you're using.
In the above case, the computer will look at the first statement, determine that it's a WriteLn statement, look at what needs to be printed, and display that text on the computer screen. It'll look like this:
Note that the quotation marks aren't there. Their purpose in the program is to tell the computer where the text begins and ends, just like in English prose. The computer will then continue to the next statement, perform its command, and the screen will look like this:
When the computer gets to the end of the text file, it stops. There are many different kinds of statements, depending on which programming language is being used. For example, there could be a beep statement that causes the computer to output a beep on its speaker, or a window statement that causes a new window to pop up.
Also, the way statements are written will vary depending on the programming language. These differences are fairly superficial. The set of rules like the first two is called a programming language's syntax. The set of verbs is called its library.
# Delphi Programming/Introduction
## How to Get Started Developing in Object Pascal using Delphi or Lazarus

All you need for programming in Object Pascal is an IDE for the Object Pascal programming Language. The number one commercial choice for Pascal development is Delphi.
To get a demo of or to buy Delphi, see http://www.embarcadero.com. If you prefer a free open-source IDE, see Lazarus at http://www.lazarus.freepascal.org. Choose one of those links and download and then install the IDE.
You should know that there are some differences between Delphi and Lazarus:
* Delphi provides two frameworks, the VCL and Firemonkey, for developing applications.
* Lazarus provides a very similar, but not compatible framework called LCL for developing applications.
* There is a wide variety of third-party and open-source components, a much larger set of components, and tools, and add-ons that work with Delphi, as you might expect for a large commercial application.
* Lazarus has a smaller, but active community that you can find online.
* Delphi has a larger community around it than Lazarus, which you can also find online. There are many blogs, forums, and user groups.
There are also many similarities:
* Delphi and Lazarus both support the Object Pascal language with Objects, for object-oriented programming.
# Delphi Programming/Reserved keywords

There are 65 reserved keywords in Delphi programming (that is to say, keywords that you can't use as variable, function or structure declarations).
Here they are:
| and | array | as | asm | begin |
| case | class | const | constructor | destructor |
| dispinterface | div | do | downto | else |
| end | except | exports | file | finalization |
| finally | for | function | goto | if |
| implementation | in | inherited | initialization | inline |
| interface | is | label | library | mod |
| nil | not | object | of | or |
| out | packed | procedure | program | property |
| raise | record | repeat | resourcestring | set |
| shl | shr | string | then | threadvar |
| to | try | type | unit | until |
| uses | var | while | with | xor |
# Delphi Programming/Arithmetic expression

An arithmetic expression returns a numerical value that can be used directly or stored in a numerical variable.

## Addition operator "+"

The operator allowing the addition is the + operator. It allows to add a number or the result of an arithmetic expression to a number or an expression.

## Subtraction operator "-"

The operator allowing the subtraction is the - operator. It allows to subtract a number or the result of an arithmetic expression to a number or an expression.

## Multiplication operator "*"

The operator allowing the multiplication is the * operator. It allows to multiply a number or the result of an arithmetic expression with a number or an expression.

## Division operator "/"

The operator allowing the division is the / operator. It allows to divide a number or the result of an arithmetic expression by a number or an expression. The result is a float.

## Euclidean division operator "div"

The operator allowing the euclidean division is the div operator. It allows to divide a number or the result of an arithmetic expression by a number or an expression. The result is a rounded integer.

## Modulo operator "mod"

The operator allowing the modulo is the mod operator. It allows to get the remainder of a number or the result of an arithmetic expression divided by a number or an expression.

## Multiple expression

You can nest expressions but don't forget the brackets.
# Delphi Programming/Assembler in Delphi

Since Turbo Pascal 1.0, the use of assembly code within Borland (currently Embarcadero) languages was quite easy.
In Delphi, simply put an assembly block between asm...end; within a code block, or you can declare a whole function procedure as assembler.
Global or local variables can be used normally, but of course they will work as pointers.
Examples:
# Delphi Programming/Dynamic link libraries (DLLs)

type em = record r = integer; h = integer
var hh = em;
# Delphi Programming/First application
## Consoles and GUI

At first we want to begin with a console application, but what's the difference between consoles and GUIs? GUI is the short form of Graphical User Interface which means that the user has one or more windows with so called components — e. g. edit fields, buttons, check boxes, scroll bars, a toolbar, a menu, ... — where he can edit something or do something with them to call an event, linked with a procedure (in other programming languages called functions — but there's a difference between functions and procedures in Delphi). The procedure is a sub algorithm with some commands (also called statements) that are only executed by calling that event.
In Windows, a console is also a little window, but it isn't called 'window' officially! By default the background of this 'window' is black and the font color is white. But you also can change those colors. You can put out or in a text there, but you can't set real components on it. The only thing you can do is simulating this. There are normally no events; your code will be executed off the reel. If you write nothing, the application will be terminated. If you write nothing in a GUI application, nothing will happen — the application won't be terminated!
Most today's applications are GUI application, for example Word, Excel or even Delphi itself. If you want to see a console application, all you have to do is pressing the start button, click Run and enter "cmd". Press 'Return' and the command prompt will open soon.
How can we create a GUI application? There are two ways. The first way — which is not very comfortable — is taking a console application and creating components and windows by using complicated commands defined by the Windows API (Application Public Interface), a library of many functions and procedures about multimedia, graphics and windows.
The second way which is more comfortable is using a special Integrated Development Environment (IDE) where we can design the components at design time (when we develop the application) and the IDE (Delphi) generates the code which creates those windows and components. Normally we — as a Delphi programmer — use this way!

## The first application: a console

Start the IDE; Enter "file" / "new" and choose "console". You will see the following:
You can delete line 9. Between begin and end. you can type your code. More about that you will find in the chapter Statements. The first line means that the project is registered and saved under 'Project1', so the unit is saved under 'Project1.pas' (pas = Pascal). '{$APPTYPE CONSOLE}' means that it is a console application. We use the library 'SysUtils' → we have to enter it in the uses clause. Later, when you have written some code, press F9 to compile and run. You will see your program under 'Project1.exe'. This is the file you have to copy to give your application to other people.
# Folkstyle Wrestling/What is Folkstyle Wrestling

Folkstyle Wrestling is the form of Wrestling that is practiced mostly in American high schools and colleges. It is also known as collegiate wrestling. The object of folkstyle wrestling is to pin your opponent. Failing this, you want to get as many points as possible.
Folkstyle scoring focuses mainly on changes in control. Taking an opponent down to the mat, escaping from or reversing control, or turning an opponent's back to the mat are all scoring situations. This differs from other styles such as Freestyle or Greco Roman, which don't encourage escapes or reversals.
The scoring for folkstyle wrestling is as follows: expose an opponents back to the mat for 3 seconds at a 45 degree angle or less, score 2 points. Hold him for 5 seconds at 45 degrees or less, and you earn 3 points . In a takedown, once you gain control of your opponents hips and they have 3 points of balance (arms and legs) on the mat, you earn 2 points. If they can reverse the position so that they have control of your hips, they earn 2 points. If they simply get away so that you both are standing with no one in control, it is called an escape and they earn one point.
# Folkstyle Wrestling/Rules
## The Objective

There are three basic victory conditions in a wrestling match:
* Pinning your opponent (Win By Fall)
* Scoring more points than your opponent in the time alotted (Win By Decision)
* Scoring 15 points more than your opponent at any point during the match (Win By Technical Fall)
** In team tournaments and meets, different points are awarded to the team, depending on whether or not a pin occurred, how large the point spread was at the end of the match one.

## The Format

* Three periods
** Can be different amount of time for periods depending on the league
*** For College the Norm is usually 3-2-2
*** For High School the Norm is usually 2-2-2
*** For Modified and Youth the Norm is usually 1-1-1

## The Three Positions

* Neutral
* Referee's Position
** Top
*** Optional/Freestyle
** Bottom

## Ways to Score

There are 5 ways to score-
* Takedown- Defined as taking opponent from feet to mat. This is worth 2 points.
* Escape- Defined as escaping opponent's control and facing him. This is worth one point.
* Reversal- Defined as coming from mat, and taking opponent to mat, in a single move/move combo, which is worth 2 points.
* Nearfall- Points gained when opponent's back/shoulders break the 45 degree plane with respect to the mat for a duration of time. A two-four count awards you 2 points, then a 5 count awards you 3 points.
* Riding Time-Defined as being in control on the mat, for a long period of time, usually used in collegiate wrestling. If one wrestler has more than 1 minute more of riding time than his opponent, he is awarded 1 point at the end of regulation time.

## Penalties

* Stalling
** Fleeing the mat
* locking hands around waist on ground without 2points of body
Note:(When a wrestler lifts another off the mat, it is the lifting wrestler's responsibility to ensure the other's safe return to the mat.)
* Locking hands strictly around an opponent's waist while on the mat.
* Potentially Dangerous
** Choking
** Full Nelson
** Body Figure Four
** Head Scissors
** Chicken wing (extended past a certain point)
** Arm across the back above 90 Degrees
* Unsportsmanlike conduct
** Swearing
** Striking
** Unnecessary Roughness
** Grabbing of the singlet
** Throwing your headgear
** physically hurting your opponent for revenge of previous match
** Smack Talking
** Pulling opponents head gear off or making it an obstruction of view
# Folkstyle Wrestling/Position and Control

Position is an essential topic in wrestling. Almost all counters to moves and the effectiveness of these counters is based on position.
Principles:
* Hips Higher Than Theirs
* Getting Behind or Squaring off
* Controlling The Hips
* Controlling the Center of Balance
* Don't go down to your hip
* Keep the Head up at all times
# Folkstyle Wrestling/Stance and Movement

Having a good stance is one of the most important skills to have in wrestling. As you will learn, a good stance is vital to your success. Throughout the book, we will be referring back to your stance and movement, so make sure that you master it now. A good stance will allow you to both defend against an opponents attack and initiate your own offensive moves. The finer points of the stance will be decided by your wrestling style (which you should already be formulating, based on the information in the last chapter) but the basic stance remains the same. Your knee's should be bent (to varying degrees based on style), your head should be up (more on this in the next chapter), and your weight should be distributed evenly throughout your foot (more on this in the next chapter as well). You may think that your stance is supposed to be comfortable... It's not. In order for you to get the maximum amount of both offense and defense, you are going to have to stand in an uncomfortable position. Figuring out your ultimate wrestling strategy will be discussed near the end of the book, but for now it is best to master all the different stances, so as to keep your options open. The different choices that you have during your stance include:
* Staggered Stance Or Square Stance
* Straight Back or Curled Back
* Forward Lean or Regular Lean
* High Stance or Low Stance
* Fingers Forward or Palms Forward
Let's go through all of these options in detail:
# Folkstyle Wrestling/Where To Practice

You should find a good wrestling club in your area or practice on the mats at your local high school. In most areas there are wrestling clubs so find. Another thing to do is find someone who was a trampoline, this is not good for moves dealing with leverage, but is a nice safe place to work on throws without getting hurt. This is also a good place to "Shadow Wrestle". That is, wrestle with an imaginary opponent. On the off season or when there are no wrestlers around, shadow wrestling can be crucial to help out with technique.
# Grand Theft Auto III/Items
## Weapons

* Fists
* Pistol (12 rounds / magazine)
* Uzi (25 rounds / magazine)
* Shotgun
* AK-47 (30 rounds / magazine)
* M-16 (60 rounds / magazine)
** requires aiming in Classic mode
* Sniper rifle
** requires aiming; can zoom in or out
* RPG
** requires Aiming
* Flamethrower
* Molotov cocktail
** hold down the shoot button for longer distance
* Grenade
** hold down the shoot button for longer distance

## Health

The red-orange Heart symbol and number are your hit points (maximum 125).

## Armor

The green Shield symbol and number is your armor points; these must be found in the game.

## Drugs

The red/white Pill symbol grants a limited time period of slowed gameplay and inordinate punching power. Negated immediately upon entering vehicle or death.

## Wanted stars

There are six blackened sheriff-star symbols under the HP readout. This Wanted meterwill grow in yellow stars with every noticeable crime you commit, such as hitting a police car, stealing a car or hitting any person in front of an officer, firing a gun, etc. Upon starting the game, you can receive a maximum of 4 stars; upon unlocking the 2nd island, 5 stars; unlocking all 3 islands, 6 stars. You may use a Pay 'n' Spray to rid yourself of all stars (except certain scripted missions).
Heart, Shield, and Star symbols are strewn throughout the City, each refilling your HP, AP, or lowering your wanted level by one star.
When you finish side missions, many weapons and bonuses will be delivered to your hideout, one in each island. They will be exhausted until you hit a camera angle that resets these perks: in Portland, run into the end of your garage or save room, then come out to reset your bonuses; in Staunton, run into your large garage; in Shoreside, run into your save room.

## Side-missions
### Ambulance

* Levels 1-12 will require you to pick-up and deliver L number of casualties to the hospital; Level 12 requires 4 minimum trips (Ambulance seats 3 + driver)
* Bonuses: Health, Drugs, and if Level 12 is successfully completed, Claude Speed will sprint indefinitely without rest

### Vigilante

* 20 kills per island gives you 2 star-reductions at your hideout
* Can be started in Police cruiser, SWAT Enforcer van, FBI sedan, or Rhino tank (maybe OL Barracks truck)
* (PC) Glitch: going to menu (Esc) next to fugitive will force them to exit their vehicle

### Firefighter

* 20 fires extinguished per island, 60 total, unlocks the Flamethrower at your hideout
* (PC) Glitch: going to the menu will extinguish any fire
* These missions are the only way to retrieve some rare vehicles for the Import-Export Garage before unlocking the 2nd island
# Grand Theft Auto III/Vehicles

In order from the sign in front of the Import-Export Garage, Portland:
In order from the sign in front of the Import-Export Garage, Shoreside Vale:
Emergency vehicles, in order from increasing wanted stars, and the vehicles that barricade you:
* Taxi
* Cabbie
* Ambulance
* Firetruck
* Police
* Enforcer
* FBI
* OL Barracks
* Rhino
# Granite WMS

The content of this site covers all areas of Granite warehouse management software. Its open for anyone to add or edit the content and by doing so sharing knowledge and insights. Although not required we do encourage you to signup (free) with wikibooks for a better experience. To upload and use images and other media you need to add it to Wikimedia Commons or go to Tools (on left) and Upload File. When adding content add descriptive name and description making it easy to find, add GraniteWMS in name.

## Table of Contents

Topics
* Installation
* Manuals
* Troubleshoot
* Standards
* SQL
* Accpac
* PastelEVO
Misc
* Windows

## External resources

Tip: create profile and ask questions, you will be surprised how quickly questions get answered.
* http://stackoverflow.com/ (technical issues)
* http://www.pluscommunity.com [select Sage Accpac ERP ] (Accpac community)
* http://www.tek-tips.com/ (technical and section on Accpac)
* http://forums.syspro.com/ (SYSPRO)
* https://biuan.com/ (SAP)
# Granite WMS/Installation
## Installation

* Services
* Database
* Labelprinting service
* Granite Integration Service
* IIS Installation and Setup
* Granite Webservice
* Granite Website
* Granite Desktop client
# Granite WMS/Accpac
## Accpac
### IC/History Transactions

Running multiple Accpac Version Installing more than one version of accpac on a machine and then switching between versions.
* Install required Accpac (in path example: Program...\Accpac60)
* Install second version (in path example: Program...\Accpac62)
* To switch to the required version navigate to installation Program...\Accpac60\Sage Accpac\runtime\
* Open / Run RegAcc.exe.
* Open Accpac once done
# Granite WMS/Development/Environment

Installation
* Visual Studio
** VisualSVN (extension)
* TortoiseSVN
* Nuget (ships with visual studio should not have to install)
# Granite WMS/Installation/Database
## Granite database

Setting up the database entails executing various sql scripts against the database. These scripts will create the Granite database including default data. It’s recommended that you are familiar with the basics of SQL and have basic knowledge of executing a sql script.

### Granite

* Open SQL Server Management Studio and Connect
* Open New Query
* Paste the content of GraniteDatabase_Create.sql into the query window
* Open menu Query and click SQLCMD Mode
* Review database name in script
* :setvar DatabaseName "GRANITE"
* :setvar DefaultFilePrefix "GRANITE"
* Click Execute or [F5]

### ERP (Accpac, Pastel …)

* Open New Query
* Select the correct ERP database
* Paste the content of [ERPNAME]_Create.sql into the query window
* Click Execute or [F5]
# Granite WMS/Installation/Labelprinting
## Labelprinting - also see troubleshoot page

To successfully install Granite label printing service you first need to set all the configurations required for the service. Once the settings are saved you can install the service.

### Configuration

* Open the label printing config file named “Granite.LabelPrinting.exe.config”
If you cannot see the .config extension it’s because windows is set to hide extension of known file types. The file will be called “Granite.LabelPrinting.exe“.
* Review the following settings
** Connection string – the granite database connection
** EndPoint address – this will be the address of the label printing service and will be used further on in setting up the webservice and webapp
** Change localhost to the hosting server IP address.
* Logger level – ensure that this is set to ERROR.
** Only set to ALL if troubleshooting is required
Example of configuration file.

### Installation

* Ensure Seagull Bartender is installed with the SDK.
* Right click on the application Granite.LabelPrinting and Click Run as Administrator
* Note that this is the same name as the above config file but without the .config extension
* In the windows command window press [i] and then [enter] to install service.
* Now open Services under Administrative Tools
* The service name will be Granite Label Printing Service
* Right click on Granite Label Printing Service and click Properties and open Log On tab
* Set This Account and specify either the local machine Administrator and Password or Domain Administrator and Password.
* Take note that this should be the actual administrator and not a user that has administrative rights.
* Click OK and Start Service
* You might have to also copy the DLL's in directory (C:\Program Files (x86)\Seagull\BarTender Suite\SDK\Assemblies\.*) from the PC to the directory of the Granite Label Printing Service.
* Check that the DLL's are unblocked by right clicking on them and selecting UNBLOCK if that button is available
Open Service
* Open your web browser
* Enter the endpoint address configured in the first steps. (localhost:2077 or IP:2077)