Total found: 296
Finale Generic CSV (full show export format)

Finale Generic CSV file format The Finale Generic CSV is an interchange format for fireworks shows that is human readable and editable. A number of fireworks software applications export and import scripts in this format without loss of information, allowing you to export a script from one program in the Finale Generic CSV format, work on it in Excel or some other software application, and re-import it back into the original application. Scripts in this format can be used as the basis for custom reports or translated into a firing script for just about any firing system available. The format contains all the information to generate an inventory report or pick list, loading report, break time report, firing script, chain building report, custom shell labels, etc.   Table 1 – File format and encoding File format Extension Text encoding Field delimiter End-of-line Text .txt or .csv UTF-8 or UTF-16 Tab or comma CRLF or LF or CR The script contains a single header row with row type FIRING_HEADER_ROW, and multiple rows with row type FIRING_DATA_ROW to represent the events in the show.  For readability, multiple rows can be combined into one if all of their fields are identical except the angle field, which can be consolidated in the single row without loss of information as described below.  Although rows can be combined in these circumstances, they are not required to be combined. The special characteristics of the script are shown in the following table:   Table 2 – Special characteristics Special characteristics Description Sort order of rows Rows are unsorted.. What rows represent Each FIRING_DATA_ROW contains the field shown in the table below. The fields have no overlapping information, so some common terms like "Effect Time" must be derived from information in other fields. The rows can be sorted in any order without any change to the meaning of the script. Thus you can cut and paste between script files to combine them, and you can re-sort them at will without generating any inconsistencies. If you cut and paste scripts together, you only need to ensure that the chain identifiers and time cue identifiers from the files don't accidentally overlap. Special characters If the file is saved with comma field delimiters, then fields containing a double-quote character (“) or comma will be enclosed in “ on both ends, and any internal “ characters will be doubled up, following the Excel quoting convention.  If the file is saved with tab field delimiters, then no such quoting is required, though programs that read Finale Generic CSV are encouraged to support the Excel quoting convention even in that circumstance. Row Type The CSV file represents a table of information. In Finale Generic CSV, each row begins with a row type identifying what kind of row it is. The first row begins with FIRING_HEADER_ROW; the other fields in this row are the names of the columns. Subsequent rows begin with FIRING_DATA_ROW; the other fields in these rows represent the devices in the script. In the future, the script format can be extended to contain other information like rack layouts or time cue comments. For a firing script, though, the only two types of rows that matter are the FIRING_HEADER_ROW and the FIRING_DATA_ROWs. Time representation Times in Finale Generic CSV are represented as floating point seconds to eliminate ambiguity between different time bases and to avoid problems editing files in Excel. Excel interprets some time formats incorrectly and loses information, but floating point numbers are safe. Each row includes only the Ignition Event Time, Device Delay, and Prefire Delay times. The time of visual impact of an effect, often called the "Effect Time" or "View Time" or "Script Time", can be calculated for each device as, Effect Time = Ignition Event Time + Device Delay + Prefire Delay Usually the Device Delay is zero, so the Effect Time calculation is the familiar equation. The Device Delay term enables representation of delay chains and devices whose ignitions are delayed from the firing system event with a delay fuse or sequencer. In these cases, the full equation involving a Device Delay is necessary to represent the full state of affairs. Representation of chains In the Finale Generic CSV format, each firing row beginning with FIRING_DATA_ROW represents a collection of devices that are identical in every respect except their launch angle. Identical devices with different launch angles can be combined in a single row. Consequently a chain or flight of identical shells could also be represented by a single row, even if the shells were at different angles. However a chain consisting of different kinds of shells would require multiple rows to represent. Rows include a "Chain Identifier" field that enables multiple rows representing parts of the same chain to be brought together to reconstitute a representation of the full chain. Using the chain identifier you can construct a chain building report that details the required assembly of fuse delays for the chains, or an inventory report that counts full chains as items instead of their individual devices. The chain identifier field also enables you to calculate the precise number of e-matches required for the show, since chains require only a single e-match in contrast with flights of shells that are e-matched together. Finale Generic CSV has a single row header of column names, followed by a list of rows representing the firing events.  Each row has the following fields in any order, identified by the column name in the header row:   Table 3 – Specifications of script fields Field name Description (Row Type) All firing rows begin with the first field, FIRING_DATA_ROW. Time Cue Number The number identifying the cue number associated with the ignition, if any. In computer fired shows it is possible for ignitions at different times to be associated with the same cue number since effects with different prefires may have the same cue number. This field is blank if the ignition does not have an associated cue. Ignition Event Time The exact time of the firing system's "ignition event" (application of a voltage to a pin) that ignites one or more e-matches or triggers a sequencer that ultimately leads to the ignition of the devices represented by this row. Format is in seconds with two digits after the decimal point. Number Of Devices The total number of devices represented by the row. A single row may represent multiple independent devices launching at the same time, or multiple devices that are part of the same chain. A single chain, however, may require multiple rows to represent it if the devices in the chain are different effects or have different angles. A device is any pyrotechnic package that cannot trivially be separated into smaller units, such as a shell, candle, cake, or even multi-break peanut shell. Chains are considered to consist of multiple devices connected by fuse. Duration The duration has one of two meanings, depending on the type of effect. For cakes, candles, and chains with multiple shots, the duration represents the time between the first and last shot's launch times. For other effects, the duration represents the lifetime of the perceived visual effect, which is usually interpreted for shells as the time from break to dissipation of the stars. Format is in seconds with two digits after the decimal point. Coordinates Nine floating point numbers: X Y Z HEADING PITCH ROLL PAN TILT SPIN.  X, Y, and Z are the coordinates of the launch position in world coordinates (meters from the show's reference point).   HEADING, PITCH, and ROLL are the heading, pitch, and roll of the position in world coordinates.  PAN, TILT, and SPIN are the angles of the effect relative to the position.  The coordinate systems and conventions for angles are explained in Racks and positions coordinate system: heading, pitch, roll and Effects coordinate system: pan, tilt, spin. Chain Identifier An identifier used to associate the devices of a chain if they are split across multiple rows. Rows that are part of the same chain have the same chain identifier. Rows that are not part of a chain have a blank value in this field. A single row is never part of more than one chain. Lockout Identifier A short string of up to three characters identifying the hazard group that the effects are assigned to, or empty string if they are not assigned to any hazard group. Some firing systems such as the Pyrodigital have a feature to disable ignitions of hazard groups in real time as the display is being fired. This field is left blank to indicate no hazard group. Device Delay The delay from the firing system's ignition event to the ignition of the device or devices represented by this row, in seconds with two digits after the decimal point. Do not confuse the device delay with the prefire delay. The device delay is the delay before the device is ignited. The prefire delay is the delay after the device is ignited, but before its visual effect is perceived. Typically the device delay is zero. It is non-zero for devices involving delay chains, delay fuses, and sequencers. For chains, the device delay is the delay from the ignition of the chain to the ignition of the specific device in the chain. For devices ignited in series with delays or by a sequencer, the device delay is zero for the earliest of the devices, and is the respective cumulative delay for each of the others. Prefire Delay The delay from when the device is ignited to its perceived visual effect, in seconds with two digits after the decimal point. If the row represents devices in a chain, the Prefire Delay refers to the devices themselves. The prefire of the chain is the time from the chain's ignition to the earliest effect time, which is typically but not necessarily the effect time of the first device in the chain. Effect Name The name of the effect. Caliber The device caliber, which also serves as the default internal diameter of the required mortar tube if no explicit Mortar Caliber is provided (see below). The format of the caliber is either a number followed by double-quote for inches or "mm" for millimeters, or the string "NA" for effects for which the caliber term is not applicable. Category One of six pre-defined English named categories of fireworks: Shells, Comets, Mines, Candles, Cakes, or Other. Chains of shells are listed in the Shells category. Lance work and other ground items are listed as Other. Angles An ASCII art representation of the angles of the devices on this shot, made with backslash, vertical line, and forward slash characters, followed by the decimal degree angles of the devices ordered left to right, separated with spaces, with negative angles meaning left aiming and zero meaning up. If the angle or angles are all straight up, the decimal degree representation is elided, for ease of reading. Position Name The name of the launch position from which the device is fired. Animation Description An English language description of the effect. If provided, the animation description is usually just a verbose effect name, something like 49 Shot 20s Time Rain Comet Cake. If the row represents a chain or part of a chain, the Animation Description should indicate a chain of N, where N is the number of devices in the full chain, e.g., Red Peony (Chain Of 10). Module Description The textual description of the module and optionally additional configuration information specific to the firing system. Module Address The module number. The empty string is a valid value, as are numbers in hexadecimal, like $11. Slat Address The slat number or letter, for firing system modules that use slats. In addition to numbers and letters, the empty string is a valid value, as are numbers in hexadecimal, like $11. Pin Address The pin number or letter. In addition to numbers and letters, hexadecimal (e.g., $11) is a valid format. However empty string is not possible as a pin address. Firing Notes The notes for the devices represented by this row, as pertaining to the show. Firing notes do not include the product notes associated with the effect definitions. In other words, a device inserted into the show initially has no firing notes. Product ID A user-assigned text string identifier for the effect type represented by this row, typically the display company's internal part number. The Finale Generic format does not specify whether Product IDs for chains represent the entire chains or the devices comprising the chains (the Number Of Devices field is unambiguous either way). This value can be in any format, and is not guaranteed to be unique. Manufacturer Product ID The manufacturer part number. Animation ID A unique, computer-assigned text string identifier for the animation represented by this row. The Unique ID may be a hash or GUID or URL or other textual representation depending on the software program that generated it.  If the row represents a chain or part of a chain, the referenced animation should represent the complete chain, not just a single device in the chain. Location Primary Name of the storage location from which the item is pulled to be boxed for the show, e.g., Magazine-A7. Location Secondary Additional description of storage location, e.g., Bin-53. Price Per Device The price per device, formatted as a floating point number with four digits after the decimal point, no units. The extra precision in the number allows for per-chain and per-case prices to be re-calculated from device prices to the penny. Mortar Caliber The internal diameter of the required mortar tube, or empty string to indicate the device caliber should be used. Small caliber items and candles are often sleeved in larger diameter mortars. This field, in combination with the Caliber field (above), allow both calibers to be represented. Track Identifier A string identifying the track that the effects are assigned to, or empty string if they are not assigned to any track. Some firing systems, such as the Cobra-18R2, use tracks to identify multiple, triggered sequences contained in a single script, and use the track identifiers to indicate the trigger buttons on the controller. The track identifier can also be used merely as an editing tool or for other custom purposes. The example script below shows an exported script in Finale Generic CSV format, saved with tab field delimiters.. FIRING_HEADER_ROW Time Cue Number Ignition Event Time Number Of Devices Duration Coordinates Chain Identifier Lockout Identifier Device Delay Prefire Delay Effect Name Caliber Category Angles Position Name Animation Description Module Description Module Address Slat Address Pin Address Firing Notes Product ID Manufacturer Product ID Animation ID Location Primary Location Secondary Price Per Device Mortar Caliber Track Identifier FIRING_DATA_ROW 0.2 1 10.0 12.5 0.0 -8.0 2.5 2.3 8 Shot Red Comet Candle 30mm Candles Pos-06 10s 8 Shot Red Comet Candle cobra_18m_100ths 00 01 00380 M00380 2.0 FIRING_DATA_ROW 2.8 1 1.02 0.0 0.0 -8.0 0.0 2.2 White Chrysanthemum 2" Shells ????? White Chrysanthemum cobra_18m_100ths 01 01 firing1 G2SH1001 G2SH1001 1.45 FIRING_DATA_ROW 2.9 1 1.02 0.0 0.0 -8.0 0.0 2.2 White Chrysanthemum 2" Shells ????? White Chrysanthemum cobra_18m_100ths 01 02 firing2 G2SH1001 G2SH1001 1.45 FIRING_DATA_ROW 3.0 1 1.02 0.0 0.0 -8.0 0.0 2.2 White Chrysanthemum 2" Shells ????? White Chrysanthemum cobra_18m_100ths 01 03 G2SH1001 G2SH1001 1.45 FIRING_DATA_ROW 3.1 1 1.02 0.0 0.0 -8.0 0.0 2.2 White Chrysanthemum 2" Shells ????? White Chrysanthemum cobra_18m_100ths 01 04 G2SH1001 G2SH1001 1.45 FIRING_DATA_ROW 3.2 1 1.02 0.0 0.0 -8.0 0.0 2.2 White Chrysanthemum 2" Shells ????? White Chrysanthemum cobra_18m_100ths 01 05 G2SH1001 G2SH1001 1.45 FIRING_DATA_ROW 3.3 1 1.02 0.0 0.0 -8.0 0.0 2.2 White Chrysanthemum 2" Shells ????? White Chrysanthemum cobra_18m_100ths 01 06 G2SH1001 G2SH1001 1.45 FIRING_DATA_ROW 3.4 1 1.02 0.0 0.0 -8.0 0.0 2.2 White Chrysanthemum 2" Shells ????? White Chrysanthemum cobra_18m_100ths 01 07 G2SH1001 G2SH1001 1.45 FIRING_DATA_ROW 3.5 1 1.02 0.0 0.0 -8.0 0.0 2.2 White Chrysanthemum 2" Shells ????? White Chrysanthemum cobra_18m_100ths 01 08 G2SH1001 G2SH1001 1.45 FIRING_DATA_ROW 3.6 1 1.02 0.0 0.0 -8.0 0.0 2.2 White Chrysanthemum 2" Shells ????? White Chrysanthemum cobra_18m_100ths 01 09 G2SH1001 G2SH1001 1.45 FIRING_DATA_ROW 3.7 1 1.02 0.0 0.0 -8.0 0.0 2.2 White Chrysanthemum 2" Shells ????? White Chrysanthemum cobra_18m_100ths 01 10 G2SH1001 G2SH1001 1.45 FIRING_DATA_ROW 3.8 1 1.02 0.0 0.0 -8.0 0.0 2.2 White Chrysanthemum 2" Shells ????? White Chrysanthemum cobra_18m_100ths 01 11 G2SH1001 G2SH1001 1.45 FIRING_DATA_ROW 3.9 1 1.02 0.0 0.0 -8.0 0.0 2.2 White Chrysanthemum 2" Shells ????? White Chrysanthemum cobra_18m_100ths 01 12 G2SH1001 G2SH1001 1.45 FIRING_DATA_ROW 4.0 1 1.02 0.0 0.0 -8.0 0.0 2.2 White Chrysanthemum 2" Shells ????? White Chrysanthemum cobra_18m_100ths 01 13 G2SH1001 G2SH1001 1.45 FIRING_DATA_ROW 4.1 1 1.02 0.0 0.0 -8.0 0.0 2.2 White Chrysanthemum 2" Shells ????? White Chrysanthemum cobra_18m_100ths 01 14 G2SH1001 G2SH1001 1.45 FIRING_DATA_ROW 4.2 1 1.02 0.0 0.0 -8.0 0.0 2.2 White Chrysanthemum 2" Shells ????? White Chrysanthemum cobra_18m_100ths 01 15 G2SH1001 G2SH1001 1.45 FIRING_DATA_ROW 55.327 1 1.532 12.5 0.0 -8.0 1 0.0 3.02 Red Peony Chain 3" Shells Pos-06 Red Peony Chain 10358 FIRING_DATA_ROW 55.327 1 1.532 12.5 0.0 -8.0 1 0.05 3.02 Red Peony Chain 3" Shells Pos-06 Red Peony Chain 10358 FIRING_DATA_ROW 55.327 1 1.532 12.5 0.0 -8.0 1 0.1 3.02 Red Peony Chain 3" Shells Pos-06 Red Peony Chain 10358 FIRING_DATA_ROW 55.327 1 1.532 12.5 0.0 -8.0 1 0.15 3.02 Red Peony Chain 3" Shells Pos-06 Red Peony Chain 10358 FIRING_DATA_ROW 55.327 1 1.532 12.5 0.0 -8.0 1 0.2 3.02 Red Peony Chain 3" Shells Pos-06 Red Peony Chain 10358 FIRING_DATA_ROW 55.327 1 1.532 12.5 0.0 -8.0 1 0.25 3.02 Red Peony Chain 3" Shells Pos-06 Red Peony Chain 10358 FIRING_DATA_ROW 55.327 1 1.532 12.5 0.0 -8.0 1 0.3 3.02 Red Peony Chain 3" Shells Pos-06 Red Peony Chain 10358 FIRING_DATA_ROW 55.327 1 1.532 12.5 0.0 -8.0 1 0.35 3.02 Red Peony Chain 3" Shells Pos-06 Red Peony Chain 10358 Figure 1 – Example Finale Generic CSV script   Table 4 – Example files Download link Explanation test_finale_generic_32_pin_modules.csv Example exported file  (CSV) test_finale_generic_32_pin_modules.fin Example show file test_finale_generic_32_pin_modules_8_pin_slats2.csv Example exported file  (CSV) test_finale_generic_32_pin_modules_8_pin_slats.fin Example show file

Importing supplier catalog into Finale 3D

The supplier catalogs in Finale 3D are hosted using independent Finale Inventory (finaleinventory.com) accounts managed by the suppliers themselves. In most cases the best starting point to prepare a catalog is to create a list of products using a spreadsheet application like Excel. The effect list is then imported into Finale 3D to tune and preview simulations and make any remaining adjustments. When ready for publishing the catalog can be uploaded directly from Finale 3D to Finale Inventory. Ongoing catalog maintenance such as updating simulations or effect specifications, adding or removing effects, and changing prices (if the catalog includes prices) can be performed in either Finale 3D or Finale Inventory. Detailed steps to create/import supplier catalog: Prepare the effects file for import. The first step is to create a list of your products using data from your price list, inventory system, or other internal data source. At minimum the list must include columns for the description and unique part number for each item. However, it is best to include additional information such as the category and subtype for each item to allow the catalog to be easily searched and filtered in Finale 3D. Table 1 below contains a full list of columns that can be imported into Finale 3D. Table 2 at the bottom of this page contains a downloadable Excel template. Finale 3D supports importing files in the TXT or CSV formats with comma or tab delimiters, encoded as ASCII, UTF-8, or UTF-16; but the "Unicode Text (*.txt)" option from Excel is the most reliable. Import the effects file. Launch Finale 3D. Do "File > Import > Import effects file… > Create new effects file with imported effects..." Finale 3D will examine the file and present a dialog telling you how many products it contains, and indicating what column headers were mis-labelled. You also will have the option to select the units of measure for duration and prefire explicitly, or leave Finale 3D to guess based on the values (it usually guesses correctly). Click okay to import the file. Save the effects file. Once your effects have are successfully imported, go to "File > Effect files > Save (fdb format)" to save the imported file locally on your computer in Finale 3D’s effect database file format (FDB). In the future, you can open the FDB file from by going to "File > Effect files > Load effects file (fdb)...". There is no need to re-import your original data. Create and tune simulations. Finale 3D will use information in the imported effects file to automatically create simulations. You can preview simulations using your cursor by hovering over the small white bar at the top of an effect icon in the Effects window. You can edit the Visual Descriptive Language (VDL) for an effect by right clicking on the effect row and selecting "Edit this effect simulation". For more information on creating or editing effects see "Effects basic instructions", and "VDL Documentation". Setup Finale Inventory. This step requires a Finale team member. Finale Inventory account is necessary to host your supplier catalog and share it with the world. A Finale Inventory account is a separate account from your Finale 3D account. During the catalog setup process you will receive an email from a member of the Finale team with a link and instructions to setup your Finale Inventory account. Once complete, you can link your Finale Inventory account with Finale 3D by logging in to finale3d.com, then going to "My Account > Connect to Finale Inventory". Here you can input your Finale Inventory credentials under the Finale Inventory Admin Credentials section. On the same page, you can give other team members editing access to your supplier catalog by adding them in the Finale Inventory User Assignments – this should only be used to share with administrators who need to contribute, edit, or modify your catalog. Sync effects with Finale Inventory. This step is typically done by a Finale team member. Launch Finale 3D. Using the blue selector in the Effects window, select your catalog by finding the collection of effects that begins with "catalog" – at this point your catalog is typically empty. To add effects to your catalog use the blue selector to load and display the effects file that you created in Step 4. To copy all effects from your local file to your catalog press Ctrl+A on your keyboard, then press Ctrl+C to copy. Using the blue selector, switch to your effects catalog and press Ctrl+V to paste the effects. Finally, use the blue selector option Sync with network to upload your effects to Finale Inventory. Publish the catalog. This step is done by a Finale team member. When your catalog is ready, reach out to your main contact at Finale to have it published for all Finale 3D users to see. Users can individually subscribe to your catalog by logging into finale3.com and going to "My Account > Supplier Catalogs Settings". By subscribing, a user has full viewing access but cannot make changes to your catalog. Keep the catalog up-to-date. Over time, it may be necessary to make periodic updates and changes to your catalog. Examples include adding new items, removing/hiding discontinued items, refining simulations, or updating pricing. Small-scale updates are best performed in Finale 3D while mass updates may be most efficiently accomplished using Finale Inventory.   Table 1 – Full list of columns that can be imported Finale 3D English name Finale 3D internal column name Finale Inventory name Explanation Part Number partNumber Product ID REQUIRED. The unique identifier for the effect, like DOM10001 or LD3CK253. This field is called the “Product ID” in Finale Inventory.  If you are creating new part numbers and are open to formatting suggestions, the best practices we recommend are: 1) all upper-case, 2) A-Z letters and digits only, 3) no spaces or special characters other than dash or underscore, 4) not longer than 16 characters, and 5) begin with two or three unique characters that identify the company, to avoid conflicts with other companies. If you already have part numbers, though, you should use your existing part numbers as is, to make it easy for users to order from you based on their scripts. Description description Description REQUIRED. The proper name of the effect as it appears in in the printed catalog, like "Galactic Gladiator" or "30mm Red Peony 75m" or "Bomba Roja Con Aro Azul" or "Синяя в красную хризантему".  Since you are importing VDL for the simulation, the description can be anything. Type partType Choreography Tab RECOMMENDED. In Finale 3D, one of these predefined English terms (exactly): shell, comet, mine, cake, candle, other_effect, single_shot, ground, rocket, flame, not_an_effect, rack, sfx, or light.  The Type field is important, because a number of the application functions behave differently depending on the Type. Please see Why is ‘Type’ so important? for an explanation of why this field is so important. Please note that these values are slightly different from the corresponding values in Finale Inventory. When importing, use the terms that correspond to the system you are importing into.  In Finale Inventory, the predefined English terms (exactly): Shells, Comets, Mines, Cakes, Candles, Other, Single Shot, Ground, Rocket, Flame, Not An Effect, Rack, Sfx, and Light. When Finale 3D connects to Finale Inventory, it translates these values to the values you see in 3D. " Size size Caliber RECOMMENDED. The caliber of the effect, in inches or millimeters, e.g., 3” or 75mm.  This field determines the size of the visual simulation. If the Size column is not present in the imported file or if the field is blank, Finale 3D will extract the size from the Description field, if present. Prefire internalDelay Prefire Time RECOMMENDED. The lift time, for shells, or the lift time of the first effect of a cake if it is a shell. As of February 28, 2020, the Prefire time should incorporate the fuse delay.  Prefires < 0.5s will delay the simulation and will not affect the lift time of aerial shells.  Prefires >= 0.5s will not delay the simulation and will determine the lift time of aerial shells.  If the column or field is not present in the imported file, Finale 3D will calculate a good default value based on the size and description.  The terms LFT and DLY can be incorporated into the VDL description of an item to override the lift time or delay before first launch implied by the prefire. Duration duration Duration RECOMMENDED. The lifetime of the stars, for aerial shells, or the duration of the continuous effect for gerbs or flares, or the duration from first launch to last break for cakes.  This field applies to the visual simulation. If the column or field is not present in the imported file, Finale 3D will calculate a good default value based on the size and description. Height Meters height Effect Height RECOMMENDED. The height in meters of the trajectory apex of an aerial shell, or of the spark plume for fountains and gerbs. This field determines the height of the visual simulation. In Finale 3D, this field is always meters. If the column or field is not present in the imported file, Finale 3D will calculate a good default value based on the size and description. In Finale Inventory, you can set the Distance Unit Of Measure to feet if you want, which applies to all distances including height and safety distance. Finale 3D will convert between feet and meters automatically if necessary when it connects to Finale Inventory, but we recommend you use meters, for simplicity. VDL vdl VDL Description OPTIONAL. The description of the effect in standard pyrotechnics terminology (Visual Description Language). If the column or field is not present in the imported file, Finale 3D will calculate a good default value based on the description.  This field defines the visual simulation of the effect, along with a few other specifications like Size, Height Meters, and Duration. Manufacturer Part Number manufacturerPartNumber Mfg Product Id RECOMMENDED. The manufacturer or supplier part number (i.e., your part number!).  Please copy the Product ID values into this column so the two columns are identical.  End-users may copy/paste parts of your supplier catalog into their own inventories, and assign their own part numbers in the primary part number field. Manufacturer manufacturer Manufacturer RECOMMENDED. This is the name of the manufacturer or supplier. If you are the manufacturer, this is you! Price stdPrice Item Price OPTIONAL. The price of the item. Finale 3D will display the price of a show based on these values. The import operation will import whatever value you provide AS IS. For chains, you can decide whether the price means the price of the full chain or whether it means the price per device (i.e., per shell). From within the Finale 3D application, the user can select "File > User settings > Interpret chain prices as per-shell" to make the prices and price summaries display correctly for either meaning. Notes partNotes Notes OPTIONAL. A user-defined field for the user’s convenience.   EX Number exNumber EX Number OPTIONAL. A field that is useful to include for US users.  This field can contain single EX numbers or a comma separated list, like 2008040132, 2004110899. As of Jan 17, 2020, this field is synchronized from Finale Inventory to Finale 3D but not in the other direction. CE Number ceNumber CE Number OPTIONAL. A field that is useful to include for European users. As of Jan 17, 2020, this field is synchronized from Finale Inventory to Finale 3D but not in the other direction. UN Number unNumber Hazardous Material OPTIONAL. A field that is useful to include for all users.  This number must be in the format: UNXXXX, where XXXX is a four digit number like 0336 or 0337.  Example: UN0337. As of Jan 17, 2020, this field is synchronized from Finale Inventory to Finale 3D but not in the other direction. Delay Default fuseDelay Fuse Delay DEPRECATED. An extra delay between the firing system ignition and the first launch that is copied by value (hence the the name "Delay Default") into the Delay field of a script row when it is inserted in the script.  As of February 28, 2020, use of this field is deprecated.  Fuse delay should be incorporated into the Prefire time.  Prefires < 0.5s will delay the simulation and will not affect the lift time of aerial shells.  Prefires >= 0.5s will not delay the simulation and will determine the lift time of aerial shells. Devices numDevices Chain Number Of Devices OPTIONAL. The number of devices in the chain, or 1 if the item is not a chain. Subtype subtype Effect Sub Type OPTIONAL. A supplier-defined category, such as 500g Cakes, or Special Shells. DMX Patch dmxPatch DMX Patch OPTIONAL. A program that defines the DMX signals corresponding to the effect. Hazard Default lockoutDefault Hazard Default OPTIONAL. A default value for the hazard class or caliber group that show operators may use to selectively prevent effects from firing based on real time conditions. Suppliers should generally leave this field blank. Custom Part Field customPartField Custom Part Field OPTIONAL. A user-defined field for the user’s convenience.   Color color Effect Color OPTIONAL. A single color, which user can use as a search term. It may contain spaces but not commas. If the effect has multiple colors, this field should contain the most prominent single color that the user is likely to search for. Tubes numTubes Rack Tubes OPTIONAL. For racks, the number of tubes in the rack. Leave blank for anything other than racks. Rack Type Default rackType Rack Type Default OPTIONAL. A field that the user an employ to set matching conditions between racks and effects. Suppliers should leave this field blank. Used used — Not applicable. Quota quota — Not applicable. On Hand qoh — Not applicable. Available available — Not applicable. Storage Location stdLocation Std Bin ID Not applicable. Category category Category OPTIONAL. A user-defined field for the user’s convenience in searching or filtering the rows in the effect window.  Unlike the Type field, the category can be anything the user wants. This field is has an exact counterpart in Finale Inventory, by the same name, and is used for stock reports and and DSMT reports for stock management.  However, in Finale Inventory the field can only contain specific, pre-defined enumerated values.  As of Jan 17, 2020, this field is synchronized from Finale Inventory to Finale 3D but not in the other direction.  Cost stdCost Std accounting cost OPTIONAL. A user-defined field for the user’s convenience. Safety Distance Meters safetyDistance Safety Distance OPTIONAL. The safety distance for the item, in meters. Remaining Quota remainingQuota — Not applicable. Remaining On Hand remainingQoh — Not applicable. Remaining Available remainingAvailable — Not applicable. Weight weight Weight per unit OPTIONAL. The weight of one device (shell, cake, etc.). If you are synching to Finale Inventory, whatever units you use in Finale Inventory apply (grams, kilograms, etc.). The "Basic Product List" report and other similar reports in Finale 3D will show the total weight for all items in the show. NEQ neq NEQ per unit OPTIONAL. The net explosive quantity of one device (shell, cake, etc.).  The "Basic Product List" report and other similar reports in Finale 3D will show the total NEQ for all items in the show. Table 2 – Template files Download link Explanation import_inventory_to_finale_3d_template.xlsx Template for importing into Finale 3D (Excel) import_inventory_to_finale_inventory_template.xlsx Template for importing into Finale Inventory web interface  (Excel)  

Importing inventory from a file

You can import a new inventory file or convert your inventory from our old software Finale Business by doing Option A, B, or C, and then right clicking on the imported items in the effects window and doing "Edit this effect simulation or rack" from the context menu to fix up the simulations one by one.   To see a preview of a simulation, hover the cursor over the white border of the black effect icon Option A) If you want to convert your My Fireworks from Finale Business to Finale 3D, then please create a show in Finale Business containing one of each effect from your My Fireworks, spaced out one at a time with a few seconds in between each effect.  Save the show as an HBS file, launch Finale 3D, and do the menu item, "File > Import > Import Effects from HBS file..." Option B) If you already have a Finale Inventory / Master Inventory account, then you don't need to re-import it.  You can just connect to it with the menu item, “File > Finale Inventory > Configure Finale Inventory connection” or the web page "finale3d.com > My Account > Connect to Finale Inventory". Option C) If you have a list of products from your own inventory or a price list from a supplier in an Excel file or a CSV/TEXT file, or in the inventory file format from other major scripting software (EFX, MDB), you can import the list into Finale 3D to use those products for scripting shows.  Finale 3D will create simulations for the effects automatically from the descriptions and other information in your product list file, even if the descriptions are in a non-English language. For Option A and Option B, that's all there is to it.  You don't need to read any further.  For Option C, there are additional details.  The rest of this article covers these details and provides a technical explanations of what is going on. The detailed steps for Option C are: Prepare the inventory file to import.   You need to convert the file to a format that Finale 3D can import.  If your original file happens to be an EFX file from Show Director or MDB effect database from ScriptMaker, then the file is okay as is; skip to the next step.  Otherwise please import your file into Excel and edit the file so that it has a single header row with only the supported fields and one data row per item.  From Excel, export the file in "Unicode Text (*.txt)" format, which produces the file that can be imported into Finale 3D.  Please refer to the import template Excel file at the bottom of this page for the list of supported fields.   Finale 3D supports importing inventory files in the TXT or CSV formats with comma or tab delimiters, encoded as ASCII, UTF-8, or UTF-16; but the "Unicode Text (*.txt)" option from Excel is the most reliable.  If your Excel file contains any line breaks or tab characters embedded in cell text, you need to remove them before exporting the CSV or TXT file.  The easiest way is to create a second sheet in Excel that references the original sheet with the Excel formula =CLEAN() for each cell, and then copy/paste the clean sheet using "Paste special > Values". Import the file.  Launch Finale 3D.  Do "File > Import > Import effects file..." then choose the location for the effects. The most common locations for importing are "My effects" or an effect database file (FDB file).  Upon import, Finale 3D will examine the file and present a dialog telling you how many products it contains, and indicating if any column headers were mis-labelled.  You also will have the option to select the units of measure for duration and prefire explicitly, or leave Finale 3D to guess based on the values (it usually guesses correctly).  Click okay to import the file. Save the inventory file.  Once you are satisfied with the imported file, you will need to save the imported effects.  The steps to save depend on the location you chose to import your effects.  If you imported into your online "My effects" collection, then save by going to "File > Sync with network" to upload your effects to the cloud.  If you imported your effects into an exiting FDB effects file, or created a new FDB effects file with the imported effects, then save by going to "File > Effects files > Save (fdb format)".  The FDB file is saved locally on your computer, you can copy, email, or transfer to other computers to share it or create backups. Optionally copy to your Finale Inventory account.  If you are using the Finale Inventory web-based inventory management software (www.finaleinventory.com) or if you have a Master Inventory from Finale Business, then you can copy the effects to your account as by simply selecting the rows to copy, then Ctrl+C, then switching to your Finale Inventory account from the blue selector in the upper right of the effect window, then Ctrl+V to paste.  If your Finale Inventory account doesn’t appear in the blue selector’s context menu, then you need to configure Finale 3D for your inventory account by going to “File > Finale Inventory > Configure Finale Inventory connection”. Step (1) mentions “fixing” the format of your product list or inventory file or making the column headers match “what Finale 3D expects”.  The basic idea is that if you make your CSV file match the column headers displayed at the top of the effects window, then those columns of data will be imported from your file into the “matching” columns in the window.  The full explanation is a little more complicated because Finale 3D relies on some columns of data that your imported file may not include, such as the Duration column, the Height Meters column, and the Type column. When you import your file, Finale 3D will calculate default values for these properties of the columns are not in your file or if the cells are blank in of the effects in the file.  Thus, even though these columns are required in the effects window, it is okay if your original imported file does not contain them. So what columns do you actually need, and what columns are optional?  At a minimum, you need these two columns in your imported file: Table 1 – Required columns for imported inventory files Part Number The unique identifier for the effect, like P10001 or 3LD253CK. Description A description of the effect, like “30mm Red Peony” or “Bomba Roja Con Aro Azul” or “Синяя в красную хризантему”. Based on this information alone, Finale 3D can fill in the other columns, like Size (extracted from the Description field if present) and Duration and Height.  Finale 3D uses machine translation algorithms to translate the description from the original language into a standard pyrotechnics terminology called VDL (Visual Description Language), which consists of approximately 300 mostly English words.  After importing your file, the VDL column in the effects window shows the translation. Usually, imported inventory files contain more than just the two columns in Table 1.  It is very common for the inventory file to contain its own Size column or Duration column, for example, as well as other properties like Price or Category.  To import these other columns, just make your column header match the Finale 3D column header in the effect window, exactly. For example, the Finale 3D column header for height is actually “Height Meters” so please make your column header be exactly “Height Meters”, not just “Height”.  You can unhide all the columns in the effects window from the gear menu on the right. By default, most of the columns are hidden. The column headers in Finale 3D may change depending on what language setting you are using.  If you match the column headers that you are looking at, exactly, the import process will work.  But if you want the import process not to depend on the language setting, you can also change the column headers in the file that you are importing the Finale 3D’s Internal Column Name, which is an English word or phrase with no spaces.  The full list of possible columns, along with their Internal Column Names and explanations, is shown in Table 2. Table 2 – Full list of columns that can be imported Column Name Internal Column Name Explanation Part Number partNumber The unique identifier for the effect, like CF10001 or 3LD253CK. This field is called the “Product ID” in Finale Inventory. Description description A description of the effect, like “30mm Red Peony 75m” or “Bomba Roja Con Aro Azul” or “Синяя в красную хризантему”.  The description can be in any language, and can contain the size and height if that information is not in other columns. This field has a counterpart in Finale Inventory (Description). Type partType One of these predefined English terms (exactly): cake, candle, single_shot, shell, ground, rocket, mine, comet, flame, other_effect, not_an_effect, rack, sfx, or light.  If the "Type" column is not present in the imported file or if the field is blank, Finale 3D will guess the type based on the description. The counterpart for this field in Finale Inventory is the “Choreography Tab”; and (regrettably) the counterpart in Finale Business and Finale Generic CSV is the “Category” field.  To handle these naming discrepancies, if the Type column is missing in the imported file and a Category or Choreography Tab column is present, the Category or Choreography Tab column will be imported as the Category.  If you are using Finale Inventory, please note: Finale Inventory’s Choreography Tab values are slightly different from Finale 3D’s Type values. When 3D connects to Finale Inventory, it translates between the names automatically. The corresponding names in Finale Inventory are Cakes, Candles, Single Shot, Shells, Ground, Rocket, Mines, Comets, Flame, Other, Not An Effect, Rack, Sfx, and Light. The special value Non-Choreographed in Finale Inventory causes the item not to be downloaded to 3D.  Please see Why is 'Type' so important? for an explanation of why this field is so important. Size size The caliber of the effect, in inches or millimeters, e.g., 3” or 75mm.  This field determines the size of the visual simulation. If the Size column is not present in the imported file or if the field is blank, Finale 3D will extract the size from the Description field, if present.  This field has a counterpart in Finale Inventory (Caliber). Prefire internalDelay The lift time, for shells, or the lift time of the first effect of a cake if it is a shell. This field is not the visco fuse delay on a cake. This field applies to the visual simulation.  If the column or field is not present in the imported file, Finale 3D will calculate a good default value based on the size and description.  Please see Cake and candle duration (and prefire). It is easiest to leave this field blank or zero for cakes and candles because the automatic default values are good.  This field has a counterpart in Finale Inventory (Prefire Time). Please see the compatibility notes below if you are importing a Finale Inventory and need to maintain compatibility with Finale Business. Duration duration The lifetime of the stars, for aerial shells, or the duration of the continuous effect for gerbs or flares, or the duration from first launch to last break for cakes.  This field applies to the visual simulation. If the column or field is not present in the imported file, Finale 3D will calculate a good default value based on the size and description.  Please see Cake and candle duration (and prefire). This field has a counterpart in Finale Inventory (Duration). Height Meters height The height in meters of the trajectory apex of an aerial shell, or of the spark plume for fountains and gerbs. This field determines the height of the visual simulation.  If the column or field is not present in the imported file, Finale 3D will calculate a good default value based on the size and description. This field has a counterpart in Finale Inventory (Effect Height). Color color A user-defined field for the user’s convenience in searching or filtering the rows in the effect window. If the column or field is not present in the imported file, Finale 3D will extract colors from the description. This field has a counterpart in Finale Inventory (Effect Color). Subtype subtype Like Color, Subtype is a user-defined field for the user’s convenience. If the column or field is not present in the imported file, Finale 3D will extract subtypes from the description. This field has a counterpart in Finale Inventory (Effect Subtype). VDL vdl The description of the effect in standard pyrotechnics terminology (Visual Description Language). If the column or field is not present in the imported file, Finale 3D will calculate a good default value based on the description.  This field defines the visual simulation of the effect, along with a few other specifications like Size, Height Meters, and Duration. This field has a counterpart in Finale Inventory (VDL Description). Please see the compatibility notes below if you are importing a Finale Inventory and need to maintain compatibility with Finale Business. Manufacturer Part Number manufacturerPartNumber This optional part number is available for your own convenience, and also to facilitate updating the VDL in your own effects files or Finale Inventory account by cross-referencing manufacturer effects lists with up-to-date VDL maintained and approved by the manufacturer. This field has a counterpart in Finale Inventory (Mfg Product Id). Manufacturer manufacturer A user-defined field for the user’s convenience in searching or filtering the rows in the effect window. This field has a counterpart in Finale Inventory (Manufacturer). Price stdPrice The price per-device of the item.  Finale 3D will display the price of a show based on these values in the lower right of the simulation view, and in the timeline if you select a time range of effects.  This field has an “Item Price” counterpart in Finale Inventory. Storage Location stdLocation An optional fixed stock location for the effect in the picking facility or warehouse, such as a bin number.  This field can be used as a sort criterion in reports and labels. This field has a counterpart in Finale Inventory: Std Bin ID. Hazard Default lockoutDefault An identifier used by various firing systems and exported in the firing system scripts for those systems, which allows the show operator to disable a section of the show based on real time conditions.  Since the hazard value may depend on an item’s placement in the shoot size, the value in the effect list is the “Default” value that is copied to the script when the item is inserted into the script. The user can subsequently change the value in the script, but since the value was copied and is not a reference, changing the value in the effect window will not affect existing effects in the show. This field has a counterpart in Finale Inventory (Hazard Default.   Tubes numTubes This term applies to racks, not effects.  It is the number of tubes in the rack. This field has a counterpart in Finale Inventory (Rack Tubes). Category category A user-defined field for the user’s convenience in searching or filtering the rows in the effect window.  Unlike the Type field, the category can be anything the user wants. This field is has an exact counterpart in Finale Inventory, by the same name, and is used for stock reports and and DSMT reports for stock management.  However, in Finale Inventory the field can only contain specific, pre-defined enumerated values.  As of Jan 17, 2020, this field is synchronized from Finale Inventory to Finale 3D but not in the other direction.  Custom Part Field customPartField A user-defined field for the user’s convenience. This field has a counterpart in Finale Inventory (Custom Part Field). Rack Type Default rackType This term applies both to racks and to effects.  It is a user-defined matching criterion between racks and the effects that are compatible with the racks.  For example, if the user has two types of single-shot racks for different caliber ranges, the user could assign LargeSS and SmallSS rack types to the effects and racks to cause them to match correctly.  Like Hazard Default, this field is copied to the script events when they are inserted into the show, not referenced, so you can change values of the items in the script according to circumstance (e.g., putting a fan of effects into a wagonwheel rack specifically even though other racks are also compatible).  Since the value is copied and is not a reference, changing the value in the effect window will not affect existing effects in the show. This field has a counterpart in Finale Inventory (Rack Type Default). Notes partNotes A user-defined field for the user’s convenience.  This field is sometimes used in report, but other times the script notes field is used in the reports instead, depending on whether the notes apply intrinsically to the effect or apply contextually to the usage of the effect in the show. This field has a counterpart in Finale Inventory (Notes). DMX Patch dmxPatch This field holds a small program or “patch” for controlling the DMX values associated with a special effect like a flame projector or moving stage light. This field has a counterpart in Finale Inventory (DMX Patch). EX Number exNumber A field for the user’s convenience. This field is has an exact counterpart in Finale Inventory (EX Number) and is used in Finale Inventory for shipping documents.  This list can include a single EX number, or a comma separated list. As of Jan 17, 2020, this field is synchronized from Finale Inventory to Finale 3D but not in the other direction. CE Number ceNumber A field for the user’s convenience. This field is has an exact counterpart in Finale Inventory (CE Number) and is used in Finale Inventory for shipping documents. As of Jan 17, 2020, this field is synchronized from Finale Inventory to Finale 3D but not in the other direction. UN Number unNumber A field for the user’s convenience. This field is has an exact counterpart in Finale Inventory (Hazardous Material) and is used in Finale Inventory for shipping documents. This number must be in the format: UNXXXX, where XXXX is a four digit number like 0336 or 0337.  Example: UN0337. As of Jan 17, 2020, this field is synchronized from Finale Inventory to Finale 3D but not in the other direction. Cost stdCost A field for the user’s convenience.  This field can be used in reports. This field has a “Standard Accounting Cost” counterpart in Finale Inventory. Safety Distance Meters safetyDistance A field for the user’s convenience.  It may also be used by site layout safety report features in Finale 3D available in the future.  This field has a counterpart in Finale Inventory (Safety Distance). Fuse Delay fuseDelay The visco fuse delay between the ignition of the device’s fuse and the first launch.  When an effect is inserted into the show, the fuse delay is copied to the the Delay field in the script.  Since the value is copied, not referenced, subsequent changes to the fuse delay in the effect window will not affect existing effects in the show.  This field has a counterpart in Finale Inventory (Fuse Delay). Devices numDevices The number of devices in the chain, or 1 if the item is not a chain. This field has a counterpart in Finale Inventory (Chain Number Of Devices). Available available The number of devices on hand in the stock facilities at any of the selected locations, minus those reserved for sales orders (shows), plus those on order but not yet received from suppliers.  Use the menu item “File > Finale Inventory > Selected locations” to choose what facility locations apply. Weight weight The weight of one device (shell, cake, etc.). The "Basic Product List" report and other similar reports in Finale 3D will show the total weight for all items in the show. NEQ neq The net explosive quantity of one device (shell, cake, etc.).  The "Basic Product List" report and other similar reports in Finale 3D will show the total NEQ for all items in the show. The effects window also displays some special columns that are not intrinsic properties of the products.  These special columns, shown in Table 3, cannot be imported as part of the import inventory process. Table 3 – Quantity columns  that cannot be imported as part of importing inventory Column Name Internal Column Name Explanation Used used A dynamic count of the number of devices used in the show. Quota quota A static count of the number of devices allocated by the designer for use in the show.  The quotas can be imported with the menu item, “File > Import quotas”. Though the quota appears as a column in any collection selected into the effect window (Per-show effects, Generic effects, your Finale Inventory account, etc.), the values are actually stored in the quota column in the Per-show effects, and are therefore associated with and saved along with the show to which they apply. On Hand qoh The number of devices on hand  in the stock facilities at any of the selected locations (use the menu item “File > Finale Inventory > Select locations” to choose what facility locations apply). Remaining Quota remainingQuota The calculated value: Quota - Used.  This field can be used as a filter condition.  Please explore the table layout blueprints available in the effects window from the gear menu. Remaining On Hand remainingQoh The calculated value: OnHand - Used.  This field can be used as a filter condition.  Please explore the table layout blueprints available in the effects window from the gear menu. Remaining Available remainingAvailable The calculated value: Available - Used.  This field can be used as a filter condition.  Please explore the table layout blueprints available in the effects window from the gear menu.   If you are importing or modifying a Finale Inventory to use with Finale 3D while maintaining backward compatibility with Finale Business, you will need to give special consideration to three fields: Prefire, Type, and VDL. Prefire.  Finale Business and Finale 3D interpret the term “prefire” for aerial cakes differently, and action is required on your part to change the prefires in your inventory to a value that works for both.  The table below shows the options, but the best solution is: change the prefires of aerial cakes to blank.  The default prefire for cakes in Business is 0.3 seconds.  Unfortunately this value causes aerial cake shells in Finale 3D to break at 0.3 seconds on the way up, looking like a geyser or flowerpot.  Please change the value to blank, or one of the other good values in the table below. Please see Cake and candle duration (and prefire) Type.  Finale 3D and Finale Inventory support all the values of Finale Business, and a few more.  Thus if the Type values in your inventory are from Business, they’ll work fine in 3D.  But if you change them to values other than Cakes, Candles, Shells, Mines, Comets, Other, or Non-Choreographed, then they will no longer work in Business. (Type is called “Choreography Tab” in Inventory, and “Category” in Business.) Please see Why is 'Type' so important?. VDL. Finale 3D and Business both support VDL effect descriptions for simulations, but Business requires a strict form of VDL.  If you type or import VDL into Finale Inventory directly, it most likely will not work for Business because it will not be in the strict form (e.g., case-sensitive).  If you need backward compatible VDL then please copy/paste the VDL field from 3D after creating or editing the simulation via the dialog, which puts it into the strict form. Table 4 shows four possible prefire values for a 3” aerial cake, and indicates whether the result is good or bad in Business and 3D.  You can see that 0.3 is bad, but the three other possibilities -- blank, 0.0, and the lift time of the first aerial shell in the cake -- are all good.  There are slight differences, but the blank value is the best choice because it works exactly the same way as 0.3 in Business, and it also works 3D, and it is simple. Table 4 – Finale 3D/Business compatibility matrix for prefires of aerial cakes like “10 Shot 5s Red Peony Cake” Prefire Finale Business Finale 3D 0.3 (GOOD) First launch at 0.0s; timeline blip at 0.3s; break at 2.8s (BAD) First launch at 0.0s; timeline blip at 0.3s; break at 0.3s (looks like a geyser) (blank) (GOOD) Same as 0.3 (GOOD) First launch at 0.0s; timeline blip at 3.02s; break at 3.02s 0.0 (GOOD) Same as 2.8 (GOOD) First launch at 0.0s; timeline blip at 3.02s; break at 3.02s 2.8 (the default lift time for 3” shell in Finale Business) (GOOD) First launch at 0.0s; timeline blip at 0.3s; break at 2.8s (GOOD) First launch at 0.0s; timeline blip at 2.8s; break at 2.8s (a little early)   Table 5 – Template files Download link Explanation import_inventory_to_finale_3d_template.xlsx Template for importing into 3D (Excel) import_inventory_to_finale_3d_template.txt Template for importing into 3D (UTF-16 text, saved from Excel)  

Inventory management basic instructions

For purposes of designing a show, inventory management means keeping track of quantities of items and adjusting quantities based on what is used in the show.  A single number isn't enough to tell the story for a particular item, however.  Finale 3D displays four quantities for every item: Available, Quota, On Hand, and Used.  The meanings of these terms, and whether they are supported in your software configuration, are described in Table 1.   Table 1 – The four quantities used in inventory management when designing a show Quantity Term Meaning Collections That Support It Where The Data Is Stored Available The quantity available to use in the show, taking into consideration reservations for other shows and purchase orders not yet received from your suppliers. Supported in My Effects, FDB effects files, and the paid version of Finale Inventory; Not supported in the read-only collections like Generic Effects and supplier catalogs, and not supported in the shared company effects list feature (also called Master Inventory). For FDB effects files, in the file; for Per-Show Effects, in the FIN show file; for My Effects and other network inventories, in the cloud. Quota The quantity you've earmarked to use in this show; comes automatically from sales orders in the paid version of Finale Inventory; also can be imported from a packing list CSV. Alternatively, since you can import any quantities you want into the Quota column, you can use the Quota column as a substitute for the Available column if the Available column is not supported by the collection you are using. Supported in all collections.  These quantities are actually stored in the Per-Show Effects collection since they are saved with the show, but the Quota column displays the quantities from the Per-Show Effects collection no matter what collection you are looking at in the effects window, matching by part number. In the FIN show file (editable in the show's Per-Show Effects). On Hand The quantity physically present at the storage location. Supported only in the paid version of Finale Inventory only. In the cloud. Used The quantity used by your show design. Supported in all collections.  The Used quantities aren't actually stored in any of the collections.  The quantities are derived in real time from your show design, and displayed in whatever effects collection you are looking at. Not stored.   The effects window in Finale 3D displays a choice of collections of effects: Generic Effects, Per-Show Effects, My Effects, various supplier catalogs, and optionally your own company's shared effects list (called "Master Inventory" in the old scripting software, Finale Business), or a view into your own company's live inventory if you are using the paid version of Finale Inventory to manage your stock.  Some of these collections are read-only, such as the Generic Effects and the supplier catalogs.  Others, like Per-Show Effects and My Effects, are read/write.  Loosely speaking, if you are keeping track of quantities of items in a collection, we call the collection an "inventory"; otherwise we just call the collection an "effects list".  The blue collections selector on the effects window has some options that can be inventories, and others that can only be effects lists.  Some of the quantities in Table 1 therefore make sense for only some of the collections. If your inventory management needs are simple, you can keep track of stock levels in the “Available” column in My effects and in effects files saved in the FDB format.   If you are using the paid version of Finale Inventory, then the Available column information is coming from your Finale Inventory account.  The Available column isn't supported by the free shared effects list (Master Inventory), so if you are using the shared effects list, you'll need to make do with the other columns of information, like Quota, to keep track of your inventory. While scripting your show, you can filter the effects window to display only the effects you have remaining available, or you can filter to show when remaining available goes negative if you want to see overuse (effects window gear menu > “Select layout template > Available positive” for example.  After scripting the show, you can do the menu item “Effects > Subtract used quantities from available,” which does just that. Then you can synch to network to save you updated available quantities to My Fireworks, or you can save the updated effects file from the blue selector “Effects files > Save (FDB format)”.  When you go to script your next show, your available quantities will take into account the items you used up. The “Quota” column is also useful for basic inventory management.  The Quota column shows the quantities that you have decided to allocated to the show before scripting it.  Display companies sometimes decide what product they want to use in the show before scripting it, so the Quota column would be the place to record that information.  In other circumstances, display operators need to script a show using the pack list of products that have been shipped to him. The Quota column is exactly the place to import the pack list quantities (“File > Import > Import quotas…”).  With the Quota column showing your allocation, you can filter the effects window to show “All effects having quota” or “All effects used or having quota” or three other options that take into account what you’ve used in the show so far are “Quota negative” and “Quota not-zero” and “Quota positive” (effects window gear menu > “Select layout template”). The quotas are saved with the show.  Even though they are shown in whatever collection you are displaying in the effects window -- My effects, Generic effects, Finale Inventory, your own effects file, etc. -- they are stored in the Per-show effects collection that is saved with the show.  Thus your show can have quotas for effects in any collection. The “On Hand” column (meaning “Quantity on hand”) is an inventory quantity that is used in more comprehensive inventory management applications available through integration with Finale Inventory.  If you integrate with Finale Inventory, the Finale Inventory application will keep track of your open sales orders (shows that you’ve sold but haven’t shipped yet) and your purchase orders (for products that you’ve purchased and haven’t received yet).  The available count in Finale Inventory takes into account “reservations” from unshipped shows and “on order” quantities from purchase orders, whereas the “quantity on hand” quantities reflect only what is physically present at your warehouse or facility.  In some circumstances, it can be useful to know while scripting a show what “available” and also what is “on hand”.  Finale Inventory keeps track of the "Location" (street address) and "Sublocation" (bunker or container) at which your items are stored, and items can obviously be stored in multiple places such as overstock locations and picking locations.  The Available and On Hand quantities sent from Finale Inventory to Finale 3D represent all Sublocations at one or more Locations.   You can filter to specific Locations with the Finale 3D menu item, "File > Finale Inventory > Select locations".  Sublocations are not visible in Finale 3D, but the "Std Bin ID" property of products in Finale Inventory is shown in Finale 3D as the "Storage Location", which may be useful for picking reports generated on the Finale 3D side (see Table 1 of Effects basic instructions). These advanced inventory management features for On Hand stock counts are only available with Finale Inventory, though.  Basic inventory management in Finale 3D just uses the Available column to record your quantities, and doesn't have any concept of item storage at multiple locations; you need to take into account reservations or or shipments manually.  Thus for basic inventory management, please leave the On Hand column blank. When you use the Available or Quota column, the quantities displayed in the effects window will change color to green or red, depending on whether you have more remaining to use or whether you’ve used too many!

Pirotex

To create and export a script for the Pirotex firing system, please follow these three steps: Design the show. Address the show ("Addressing > Address show"). Export the script ("File > Export > Export firing scripts"). Step 3 creates the script file, which is a CSV file that you can import into your firing system.   Figure 1 – The Pirotex firing system   The Pirotex script is a text file that supports 32, 64, 128, and 256-pin modules, and 10-pin slats (AKM-10).  The pins on the modules themselves are triggered by the channel number associated with the pin, which is just the pin number.  The pins on the slats fire in order from first to last, triggered by successive triggers of the channel number on the module associated with the slat.    Each row of the script specifies only a module number and channel number as the firing address.  If a slat is attached to the channel number, then the row triggers the next unfired pin on the slat.  If no slat is attached to the channel number, then the row triggers any effects that are wired directly to the pin on the module.   Table 1 – File format and encoding File format Extension Text encoding Field delimiter End-of-line Text .txt UTF-8 Tab CRLF The script contains rows for the firing events, i.e., unique combinations of module, channel, and ignition-time.  Multiple effects can be combined on a single cue. The special characteristics of the script are shown in the following table:   Table 2 – Special characteristics Special characteristics Description Sort order of rows Rows sorted ascending first by Event Time. What rows represent Rows represent firing events, i.e., unique module-channel-ignition-time events.  If multiple effects are triggered on the same cue, the effects are combined in name field, but the row is still just one row. Special characters If a field contains a double-quote character (“), then the field will be enclosed in “ on both ends, and any internal “ characters will be doubled up, following the Excel quoting convention. Minimum separation between cues None Multi-hit pins Supported in the script format and with manual addressing in Finale 3D, for non-pyro effects like flames and relays that can be triggered multiple times.  Finale 3D handles multi-hit pins in the Pirotex exporter the same as it handles single-hit pins -- whatever pin address is in the script row in Finale 3D will be copied to the exported script row for Pirotex, whether or not the pin address is unique.  The standard pyro addressing functions in Finale 3D assign pins sequentially, so it may be easiest to address multi-hit pins in Finale 3D by editing the script table by hand and then locking the edited rows so the show can be re-addressed for pyro without affecting them. Slats The pins on the Pirotex AKM-10 slats fire in order from first to last, triggered by successive triggers of the channel number on the module associated with the slat.    Each row of the script specifies only a module number and channel number as the firing address.  If a slat is attached to the channel number, then the row triggers the next unfired pin on the slat.  If no slat is attached to the channel number, then the row triggers any effects that are wired directly to the pin on the module. It is easy to assign firing system addresses automatically in Finale 3D for a Pirotex show that uses only pins on the modules, or a show that uses only pins on the slats.  It is also not so hard to assign addresses automatically for a show that uses pins on both modules and slats, but only if the slats are connected to different modules. If the show uses pins on modules and on slats connected to the same modules, then you have to assign firing system addresses manually. If your show uses only the pins on the modules themselves, no slats, then simply address the show using any of Finale 3D’s addressing functions, and choose the “Pirotex 32 Pin Module” module type to be used throughout (or choose 64 or 128 or 256 pin). If your show uses only the pins on the slats, ignoring the pins on the modules, then simply address the show using any of the Finale 3D’s addressing functions, and choose “Pirotex AKM-10” module type (slats). If your show uses the pins on the modules at some positions, and uses AKM-10 slats at other positions but does not use any pins on modules to which the slats are attached, then select the positions at which you want to use the modules’ pins, right click on them and do “Edit Properties”.  Set their module type to “Pirotex 32 Pin Module” (or other 64 or 128 or 256). Select the other positions, right click on them and set their module type to “Pirotex AKM-10”. Then address the show using any of the addressing functions. Slats connected in series AKM-10 slats connected in series act as a single slat with all the pins combined (gaps from unused pins are ignored).  The pins are triggered by a single channel for the whole series, which means the slat numbers assigned to the individual slats by the addressing function are NOT the channel numbers for series. The Custom Position Field, which you can set by editing position properties, is a "channel override" for the Pirotex exporter.  It enables you to specify a single channel number to use for all firing rows at the position: whatever channel would have been exported (the pin number for pins on the module, or the slat number for pins on the slat) will be overwritten by the value of Custom Position Field. EXAMPLE: Consider three positions with 16 shots per position, addressed for AKM-10 slats in position order.  The first position would have slat 1 and 2; the second would have 3 and 4; the third would have 5 and 6. If the user wants to attach 1 and 2 in series and assign them to channel 1, the user sets the Custom Position Field for position 1 to 1.  Similarly, he sets the Custom Position Field for position 2 to 2; and 3 to 3. RULE: For any positions with AKM-10s (in series or not), you must sort shots at the positions first by event time (e.g., sorting by "Position then Event Time").  If the AKM-10s are in series you must also avoid any slat constraints that could result in pin numbers across the series being non-chronological. The rule for slat constraints on positions with AKM-10s in series is tricky.  In general you cannot safely constrain slats to any effect property (size, part number, etc.) with AKM-10s in series, because that could result in non-chronological shots between the slats.  You can constrain slats to the same rack or rack cluster if all the racks at the position are equivalently compatible with the shots at the position (e.g., all tubes are the same size). This constraint, which is useful to avoid e-matches running between racks or rack clusters, is the only slat constraint that is prudent to use with AKM-10s in series if you use the automatic addressing functions.  If you use the fill-down addressing method, you can use all constraints if you uncheck the "Backfilling allowed" box in the fill-down dialog. The Pirotex script has no header, just a list of rows corresponding to the firing events.  Each row has four fields, defined as follows:   Table 3 – Specifications of script fields Field name Description Event Time Time in the format H:MM:SS:FFF from the beginning of the show (millisecond resolution) Module Number Module number, beginning with 1. Channel Number If the row refers to a terminal on a module, then this field is the pin number, beginning with 1, up to 32, 64, 128, or 256, depending on the module type.  If the row refers to a terminal on a slat (i.e., the AKM-10 slat), then this field is the channel number of the slat or slats connected in series. The pins on a slat are triggered in sequence by successive triggers of the slat’s channel number. Effect Name The effect name. The example script below is from a show with two positions.  One position has 16 shots, a tenth second apart, shot from two AKM-10 slats on channel 1 and 2 of module 10.  The first 10 sequential shots all have module 10, channel 1 in the script; the next 6 sequential shots all have module 10, channel 2.  These are the first 16 rows in the script. The second position has 2 shots, a tenth second apart, shot using the pins directly on module 20.  In the script, these two rows have module 20, and channel 1 and 2 corresponding to pins 1 and 2 on the module itself.   0:00:02.800 10 1 Red Chrysanthemum 0:00:02.900 10 1 Red Chrysanthemum 0:00:03.000 10 1 Red Chrysanthemum 0:00:03.100 10 1 Red Chrysanthemum 0:00:03.200 10 1 Red Chrysanthemum 0:00:03.300 10 1 Red Chrysanthemum 0:00:03.400 10 1 Red Chrysanthemum 0:00:03.500 10 1 Red Chrysanthemum 0:00:03.600 10 1 Red Chrysanthemum 0:00:03.700 10 1 Red Chrysanthemum 0:00:03.800 10 2 Red Chrysanthemum 0:00:03.900 10 2 Red Chrysanthemum 0:00:04.000 10 2 Red Chrysanthemum 0:00:04.100 10 2 Red Chrysanthemum 0:00:04.200 10 2 Red Chrysanthemum 0:00:04.300 10 2 Red Chrysanthemum 0:00:16.116 20 1 Blue Chrysanthemum 0:00:16.216 20 2 Blue Chrysanthemum Figure 1 – Example Pirotex script

Cobra

To create and export a script for the COBRA firing system, please follow these three steps: Address the show ("Addressing > Address show"). Export the script to a USB thumb drive ("File > Export > Export firing system script file..."). Load the script by inserting the USB thumb drive into the 18R2 remote. Step 2 creates the script file, which is a standard format CSV file with a "CSV" extension.  The file format details are described below in this section.   Figure 1 – Cobra firing system   Cobra modules have 6, 18, 36, or 72 pins (cues), but as far as addresses are concerned the modules with more than 18 pins are just two or four 18-pin modules combined, with each of the 18-pin modules having a separately assignable module number (channel number).  If you use 36 or 72 pin modules, simply treat them as multiple 18-pin modules stuck together, and assign their separate module numbers to whatever is needed at their physical locations.  If you use 6-pin modules, take care to avoid assigning pins above 6 or create a custom module with a 6-pin limit.   Table 1 – File format and encoding File format Extension Text encoding Field delimiter End-of-line Text .csv ASCII Comma CRLF The script contains rows for the firing events, i.e., unique combinations of module, pin, and ignition-time. Multiple effects can be combined on a single cue. The special characteristics of the script are shown in the following table:   Table 2 – Special characteristics Special characteristics Description Script formats for different Cobra firmware versions Finale 3D can export script files formatted for the following COBRA firmware versions: v3.X v4.X, v5.0.X v5.1.X v6.X v7.X COBRA v3.0 and v4.0 scripts have 1/10th of a second resolution; later versions have 1/100th of a second resolution.  Beginning with COBRA v6.0, the script supports launch position coordinates, definable pulse time and embedded part numbers. COBRA v7.0 scripts introduce track labels (see below), disable groups (see below), and the "DMX Ramp-To Value" field. Sort order of rows Event rows in each section of the script are sorted ascending first by Event Time. What rows represent Rows represent firing events, i.e., unique module-pin-ignition-time events. If multiple effects are triggered on the same cue, the effects are combined in name field, but the row is still just one row. Structure of script file The script file begins with a header with position coordinates, followed by one or more sections (one for non-semi-automatic) of event rows, each section with its own two-row header, followed by “end” as a row by itself. Script comments Empty cues in Finale 3D that have text in the Note field are included in exported Cobra scripts as script comment rows.  The format of the script comment rows for Version 6 or later includes the Event Time field and the Name field only, as shown in the middle line of this example: 0,1,,0,audiobox.mp3,cobra,,,, 00:00:02.16s,,,THIS IS A SCRIPT COMMENT,,,,,,, 00:00:02.76s,channel 1,cue 1,Red Chrysanthemum,,,,,,, Script comment rows for Version 5 and earlier are simply pound-sign comment rows, as in: 0,1,,0,audiobox.mp3,cobra,,,, #THIS IS A SCRIPT COMMENT 00:00:02.76s,channel 1,cue 1,Red Chrysanthemum Script comment rows in the Version 6 format will appear in Cobra Show Creator and in the Cobra Control Panel. Semi-automatic firing options Cobra firing systems support three types of semi-automatic and step firing methods: 1) "Separate Scripts By Tracks" 2) "Step By Tracks" 3) "Step By Events" In Finale 3D, you can specify one of these three semi-auto script types or choose "Standard Script" (to generate a fully-automatic script) in the Export Options dialog that is presented when you export the script. The Separate Scripts By Tracks method splits the script into multiple scripts that are triggered on demand by pressing the corresponding cue button on the Cobra controller. The Step By Tracks method is similar, but advances through the tracks of the show sequentially with the step button on the controller, instead of by random access. The Step By Events method advances one event at a time sequentially with the step button.  Examples of all four script formats are provided in Table 4.See semi-automatic-firing for further instructions. Step By Events "Step By Event" scripts advance through the "Step Cues" manually as you press the STEP button. Each Step Cue consists of one or more events that are logically triggered together. For example, a pair of shells ignited at the same time are logically triggered together even if they are ignited by different pins or modules. A stack of different size shells ignited at the same time -- and thus generally breaking at different times -- are also part of the Step Cue. The concept of events being logically triggered together also extends to events with the same effect times.  A stack of different size shells ignited at different times but breaking at the same time are also part of the same Step Cue, because that is what you would expect. If events in a Step Cue have different ignition times, the Step Cue triggers the first immediately and incorporates a delay in the later events to preserve their relative ignition times. A stack of different size shells breaking at the same time thus generally fires the largest shell immediately and the smaller shells after delays that cause them to break at the same time. DMX events may also be included in Step Cues, on their own or combined with pyro events. Since a DMX effect represented by one row in the script table may require multiple DMX events in the exported script to control multiple DMX channels, all the DMX events associated with a row of the script table are necessarily part of the same Step Cue. In some cases, such as a DMX fixture with a color wheel or moving head, some of the DMX events associated with the effect must occur in advance of the visual appearance in order to turn the color wheel or move the head to the correct angle before turning on the fixture effect.  Since the wheel turning or head moving can't begin until the Step Cue has been triggered, the fixture effect may not be ready to turn on immediately, which manifests in a delay between when you press the STEP button and when the effect visually appears.  Please see DMX setup events — preparing channels before the effect begins for more details. Tracks The "Separate Scripts By Tracks" and "Step By Tracks" firing methods use the Track property in Finale 3D script rows to indicate the section of the show to which the row belongs. For Separate Scripts By Tracks the Track also indicates the button on the Cobra controller that triggers the section, which is in the Track value itself, a number 1-18 (please unhide the Track property in the script to use this feature). In Finale 3D, the Track field in the script table is hidden by default; unhide it from the blue gear menu. In the Cobra script file, sections are listed sequentially with a comment row and header row above the event rows, e.g., #Track 1,,,,,,,,,, 0,1,,0,audiobox.mp3,Opening,,,,timecode1, The number in the Track field in the Finale 3D script is the number in the #Track comment row, and also the second field (Trigger Button) in the header row.  The sixth field in the header row for the script ("Opening" in the example above), is a track label. The rows in each section of a semi-automatic script have time values relative to the first event in the section, which is always time zero. In the Finale 3D script, please arrange the track sections in order, with no interwoven or overlapping events.  Separate tracks in DMX scripts therefore need separate safety channels. Track labels Track labels were introduced in COBRA firmware V7.0 for "Separate Scripts By Tracks" shows to provide a readable label or note on the remote for the track/script.  In Finale 3D, the Track field holds the track number and the track label together, as in "01 Opening" or "02 Middle Section".  The track number is the first number contained in the string, e.g., the number 1 in "01 Opening" or "Opening 01".  The track label is the string itself after skipping over any leading number in the string and trimming whitespace.  For example, the track label of "01 Opening" is "Opening"; the track label of "Opening 01" is the same "Opening 01" because the string doesn't begin with the number. The best practice for representing track numbers and labels in the Track field in Finale 3D is to use a two digit number padded with a leading zero if necessary, followed by the track label.  The reason for the two digits and for putting the number first is to make it possible to sort the script window in Finale 3D by the Track column numerically. Special characters To avoid the need for an escaping convention, Finale 3D filters out comma, semicolon, double-quote, backslash, and all control characters from the exported script. The Cobra controller implements the Excel escaping convention, but Finale 3D filters the characters anyway to avoid types of errors that are common when users import and export from Excel and text editors. Minimum separation between cues None Alternates Cobra scripts provide for listing "Alternate1" and "Alternate2" events at the end of the script, and binding the events to buttons that can be pressed to trigger the events during or after the script.  To use this function in Finale 3D, unhide the "Alternate" column in the script table window, and put the value "1" into script rows that you want to be "Alternate1" events; and the value "2" into script rows that you want to be "Alternate2" events.  Finale 3D will include these events at the end of the exported script, and optionally double-list them in the body of the script depending on your choices in the Export Options dialog (See Table 3). Disable groups COBRA v7.0 and higher firmware recognizes the "Hazard" field of Finale 3D, which is exported as a text field identifying a class of events that can be disabled on the fly based on conditions during the show. Pulse Time COBRA v6.0 and higher firmware supports a user-defined pulse duration for which cue is to be energized. The pulse duration values in the exported script come from the durations of flames, lights, and other special effects. For more details on pulse duration, see Why is ‘Type’ so important? What depends on it? Multi-hit pins Used for non-pyro effects like flames and relays that can be triggered multiple times. Finale 3D handles multi-hit pins in the Cobra exporter the same as it handles single-hit pins -- whatever pin address is in the script row in Finale 3D will be copied to the exported script row for Cobra, whether or not the pin address is unique. The standard pyro addressing functions in Finale 3D assign pins sequentially, so it may be easiest to address multi-hit pins in Finale 3D by editing the script table by hand and then locking the edited rows so the show can be re-addressed for pyro without affecting them. DMX COBRA v6.0 and higher firmware with 36M and 72M modules supports DMX output for separate or shared DMX universes on each module. DMX Ramp-To Value COBRA v7.0 and above support the "DMX Ramp-To Value" field which specifies the interpolation end-value for a DMX channel.  This feature supports fades and color blends for light fixtures, and more controllable movement for moving head fixtures. When you export a firing script for Cobra, Finale 3D presents an "Export Options" dialog with options that go into the header of the exported script or affect the format.  The choices are shown in Table 3.   Table 3 – Export options Option name Description Version Choose the script format that matches your firmware version, v3.X - v7.X.  The version affects the number of columns in the exported script, the time resolution, and various capabilities.  Version v6.0 is the first version to support DMX. Script Type Choose one of the four script types: Standard Script, Step By Events, Separate Scripts By Tracks, and Step By Tracks. Use Cobra Audio Box Select 'Yes' if you plan to shoot your show using the Cobra Audio Box, otherwise select 'No'. Audio Box Filename This corresponds to the filename of the MP3 soundtrack that you plan to load into the Cobra Audio Box. The name that you specify here will be added to the header in the script file and must match exactly to the filename of the soundtrack that you load into the Audio Box. For example, if you specify "audiobox.mp3" in the script export options dialog, then the filename of the soundtrack that you load into the Audio Box must be "audiobox.mp3". If the Audio Box filename in your script and your soundtrack filename don't match, your show will not fire. In COBRA firmware v3.X and 4.X, the Audio Box filename must be "audiobox.mp3" and is not editable. In COBRA firmware v5.0.X, the Audio Box filename can be custom, but must be 12 characters or less including the .mp3 file extension. In COBRA firmware v5.1.X and v6.X, the Audio Box filename can be custom, but must be 31 characters or less including the .mp3 file extension. Note: The Audio Box filename may contain lowercase letters a-z, uppercase letters A-Z, numbers 0-9, hyphens '-', underscores '_', and spaces. No other characters are permitted. The filename of the music soundtrack that you place on your USB drive and insert into the COBRA Audio Box must be identical to the filename you enter here. SMPTE Timecode (COBRA v5.1 and higher) Select among three timecode choices: None, Timecode 1, and Timecode 2.  This choice merely fills into the header of the exported script.  The choice does not affect any other timecode related features, including the exported soundtrack. Timecode 1 - The 18R2 will continue to fire even if the timecode is lost or the quality is too poor. Timecode 2 - The 18R2 will stop firing if the timecode is lost or the quality is too poor. If the timecode stops, fast forwards, or is rewound, the 18R2 will keep in sync with the timing. Trigger Channel Choose the channel that the 18R2 remote needs to be on as a precondition for the user to initiate this script: 0-99, or the option "None".  The option "None" indicates no specific channel is required as a precondition for initiating this script. Return Channel Choose the channel that the 18R2 remote returns to automatically upon completion of the script, 1-18 or "None". Trigger Button Subject to the Trigger Channel precondition, the Trigger Button is the button on the 18R2 remote that triggers the script, 1-18, or the STEP button, or the AUTOFIRE button. If you choose the script type Separate Scripts By Tracks, then the Track field in Finale 3D that groups together sections of the show into separately triggered scripts on the 18R2 also specifies the Trigger Buttons for the separate scripts as being the Track numbers. Deadman Button / Trigger Confirmation Button Choose "None" or optionally a button 1-18 or "Deadman" as a confirmation button for triggering the script.  The choice cannot be the same as the Trigger Button. Disable Firing Button Choose "None" or optionally a button 1-18 to disable firing during a show. Alternate 1 Button Choose the button associated with "Alternate 1" script events (see "Alternates" in Table 2). Alternate 2 Button Choose the button associated with "Alternate 2" script events (see "Alternates" in Table 2). Exclude alternates from script body Choose whether alternates are double listed in the body of the script (see "Alternates" in Table 2). First event of Step By Events scripts fires when script starts Choose whether Step By Events scripts, when triggered, require pressing the STEP button for the first event or whether the first event fires immediately when the script is triggered.  This option is typically not checked unless if you choose the STEP button as the Trigger Button for the script, in which case it is a matter of personal preference.  The option only affects Step By Events type scripts. After the header, each row in the script has a number of fields separated by the vertical bar character. The names of these fields and their descriptions are shown in Table 4.   Table 4 – Specifications of script fields Field name Description Event Time Ignition time of the event, in the format: 00:00:01.00s. Channel Channel number (same as the Module Number and Rail Address), in the format: channel 10. (Blank for DMX rows.) Cue Cue number (same as the Pin Address), in the format: cue 1. (Blank for DMX rows.) Name Effect name, followed by the part number in curly braces (COBRA v6.0 and higher; non-DMX effects only), followed by double-slash and the name of the position or positions, followed by double-dash and the DMX channel label and channel offset in parentheses if event is a DMX event.   If the name contains a fixture ID / effect ID annotation in the format "[xxx/yyyy]" the fixture ID will be removed since it is redundant with the name of the fixture that is typically also in the name.  The value is a text string, at most 62 characters long. PYRO EXAMPLE: "Red Chrysanthemum {G2SH1000} // Pos-01/Pos-02/Pos-03" DMX EXAMPLE: "EZPAR [1096] White Flash (sm) // Pos-01/Pos-02/Pos-03 -- Dimmer (+0)" The DMX example's effect originally had a fixture ID / effect ID annotation of "[005/1096]" but the fixture ID "005/" was removed from the exported name. Disable Groups (COBRA v7.0 and higher) Text string identifying a group of events that can be disabled on the fly based on conditions during the show. Pulse Time (COBRA v6.0 and higher) Duration for which cue is to be energized, in floating point format (0.01 second resolution); or blank for the default duration. Finale 3D writes the empty string value, unless the cue contains an event of type sfx, flame, light, or not_an_effect, in which case Finale 3D writes the duration of the event as shown in the script row. See Why is ‘Type’ so important? What depends on it?. DMX Ramp-To Value (COBRA v7.0 and higher) Blank for no function, or an integer from 0-255 specifying the end-value for the DMX channel to interpolate to over the DMX Duration. DMX Universe (COBRA v6.0 and higher) Integer from 1-100, identifying the DMX universe. (Blank for non-DMX rows.) DMX Channel (COBRA v6.0 and higher) Integer from 1-512 identifying the DMX channel of the row. (Blank for non-DMX rows.)  NOTE: as of 4/2/2021 Cobra hardware is limited to 200 channels, 1-200. DMX Channel Value (COBRA v6.0 and higher) Integer from 0-255 identifying the value for the DMX channel. (Blank for non-DMX rows.) DMX Duration (COBRA v6.0 and higher) Duration of DMX command, at which point the DMX channel value will be reset to zero, or, blank to leave the DMX channel value as is until a subsequent script row for the same channel changes the value. (Blank for non-DMX rows.) An example semi-automatic script with two sections is shown below. The first track section contains two events with disable groups (wind, rain), and a third event with an explicit pulse duration. ##version 6 #Track 1 0,1,,0,audiobox 00:00:00.00s,channel 1,cue 1,White Chrysanthemum {G2SH1000},wind, 00:00:02.90s,channel 2,cue 1,White Chrysanthemum {G2SH1000},rain, 00:00:05.40s,channel 2,cue 4,Long Flame Projector Shot {GXX1101},,0.41 #Track 2 0,2,,0,audiobox 00:00:00.00s,channel 5,cue 1,Green Chrysanthemum {G2SH1001},, 00:00:01.00s,channel 6,cue 1,Green Chrysanthemum {G2SH1001},, 00:00:02.00s,channel 7,cue 1,Green Chrysanthemum {G2SH1001},, 00:00:03.00s,channel 8,cue 1,Green Chrysanthemum {G2SH1001},, end Figure 2 – Example Cobra script   Table 5 – Example files Download link Explanation test_cobra.fin Example show test_cobra_standard_script.csv Example exported standard script (fully-automatic) test_cobra_separate_scripts_by_tracks.csv Example exported semi-automatic script (separate scripts by tracks) test_cobra_step_script_by_tracks.csv Example exported step by tracks test_cobra_step_script_by_events.csv Example exported step by events magicfx_cobra_standard.fin Example DMX show using MagicFX flame projector magicfx_cobra_standard.csv Example exported DMX script using MagicFX flame projector  

Why is ‘Type’ so important? What depends on it?

Every effect or other kind of part in the effects table has a Type, chosen from a list of twelve predefined options. Other fields, like Category, Rack Type, and Subtype, allow the user to make up the categories or other possibilities for his own purposes, but not Type. Type is different, because the software functions look at the Type value to determine how to handle the part. For example, the function that adds all the necessary racks to the show needs to know what effects require mortars -- shells do, cakes do not. By looking at the Type field, the function can know to add mortars for the shells, but not for the cakes. There are other things that depend on Type also. They are all described in the following table that lists the twelve pre-defined Type values and what they mean. You will notice that the types are entirely lowercase, with underscores instead of spaces, and they are in English. Those typographical conventions are a clue that the Type values are never translated to other languages. No matter what language you are using, the Type values will always be cake, candle, shell, and nine others.   Table 1 – Differences between the twelve pre-defined Types Type Notes Assigned firing system address or DMX channel; included in script Has adjustable duration Implies pulse duration Requires mortar rack Requires non-mortar rack Requires e-match; included in script report Has VDL-based icon Rotationally symmetric Safety distance is meaningful Included in sales orders cake YES YES (cake rack; unless sleeved in which case single-shot rack) YES YES YES YES candle YES YES (candle rack; unless sleeved, in which case mortar rack) YES YES YES YES YES shell YES YES YES YES YES YES YES ground YES YES (cake rack; unless sleeved in which case single-shot rack) YES YES YES YES YES other_effect Other pyro effects, like set pieces. YES YES YES but only if sleeved, in which case single-shot rack YES YES YES YES sfx Cryo, confetti, stadium shots, and adjustable duration flame. YES YES YES YES YES flame Fixed duration flame machine effects; change Type to sfx if you want to edit the Duration field in the script directly. YES YES YES YES light YES (except NO if effect is on drone position) YES YES YES rocket YES YES (candle rack) YES YES YES YES YES mine YES YES YES YES YES YES YES comet YES YES YES YES YES YES YES single_shot If a pyro effect goes into a single shot rack, then its Type must be single_shot, not comet, mine, etc. YES YES (single-shot rack) YES YES YES YES YES not_an_effect YES YES YES rack YES macro Causes the macro effect to expand into other effects when inserted into the show instead of being inserted into the show itself. The next table gives explanations of what the differences mean.   Table 2 – Explanation of the differences Dependency Description Assigned firing system address or DMX channel The "Addressing > Address show" function and other addressing functions assign firing system addresses (including module addresses for DMX-based effects) if this value is YES, and do not if this value is NO. Any effect that has a representation in the exported firing system scripts requires a firing system address, so if the value is NO, the item will not appear in the exported scripts. Items with the value NO may be useful for comments or triggers of non-firing system related actions. Has adjustable duration Generally the Duration field in script rows comes from the Per-show effects list by reference -- the Part Number in the row matches the Part Number of an effect in the Per-show effects, and the Duration defined by that effect applies to script row. If you change the Duration of the effect in the Per-show effects, that will automatically change the duration of all rows in the script that refer to that effect. There are two exceptions: chain rows, and rows referring to effects whose Type implies the effect has adjustable duration. In these cases, when the effect is inserted into the script, the effect’s Duration is copied by value into the script, and no reference or link is maintained to the original duration. You can edit the Duration of adjustable duration effects directly in the script rows, and different rows with the same effect can have different durations. The downside of adjustable duration effects is that if you change the effect’s Duration in the Per-show effects, you probably expect it to change in the show, but it doesn’t, because for these effects the Durations in the script are decoupled from their original definitions. The upside of adjustable duration effects is that for some applications you may want to be able to control duration on a row-by-row basis, and adjustable duration lets you do that. Implies pulse duration The pulse duration refers to the period of time the firing system pin is electrified for the effect. For most pyro effects, the pulse duration is just long enough to ignite the e-match, and doesn’t vary from effect to effect. But for flames and some other kinds of special effects, the pulse duration of the firing system is the duration of the effect. Depending on the firing system, the rows in the exported firing system script may contain a pulse duration value equal to the effect’s Duration only for effects that imply pulse duration. Exported scripts for the 100Hz Cobra systems, for example, have a blank pulse duration field for pyro and a pulse duration equal to the effect’s Duration only for effects that imply pulse duration. Requires mortar rack The rack layout functions of Finale 3D add racks for the types of effects that need them. If the Type field of the effect is shell, mine, or comet, then the effect requires a mortar rack. Other types of effects, like cake and single_shot, require different structures of racks (non-mortar racks). Some types of effects, like not_an_effect, do not require a rack at all. Requires non-mortar rack Different Types of effects require different rack structures. If the Type field of the effect is cake, candle, ground, or single_shot, then the effect requires a special structure of rack for that Type of effect. The rack structure is specified in the rack’s VDL field, and is mortar rack by default if the VDL field is blank. You can view or edit a rack’s structure in the “Create rack” or “Edit rack” dialog. Requires e-match The summary dialog presented after addressing the show displays the number of required e-matches. Items that do not require e-matches do not contribute to the e-match count. Has VDL-based icon VDL-based icons are simulations generated from the VDL field and other fields like Duration and Size, but only for the Types that make sense. Parts of Type rack have a special-purpose icon based on the Size. Parts of Type not_an_effect have a generic icon. Rotationally symmetric Items shot out of tubes, like shells, mines, and comets, are rotationally symmetric around their direction axis, the axis of the tube.  Rotating a shell within its tube doesn't have much bearing on the appearance.  Effects like cakes and set pieces, however, are not rotationally symmetric around their direction axis, which is usually "up".  Rotating a fan cake 90 degrees changes the fan from front-facing to side-facing. An effect's rotational symmetry affects the rotation required of a rack to hold the effect at its proper orientation.  Non-rotationally symmetric items like cakes in a cake or ground rack will require the rack's heading to match the effect's pan.  Non-rotationally symmetric items like slice cakes in a single-shot rack will require the rack's heading to be orthogonal to the effect's pan so the physical width dimension of the slice cake aligns with the rows of the rack (cakes can be forced into single-shot racks using sleeving or Rack Type part numbers). Safety distance is meaningful Site layout diagrams that include safety circles based on effects' safety distances will exclude effects for which the safety distance is not meaningful. Lights do not have meaningful safety distances but effects of type "sfx" do, because sfx effects may include variable duration flames. Included in sales orders The menu item, "File > Finale Inventory > Update sales order from used quantities" will ignore effects like flame effects and light effects because they do not represent physical inventory items.

How can I tell if an effect is a chain?

It sounds like a simple question: How can I tell if an effect is a chain?  The reason it is not simple is that multiple pieces of information about the effect can be inconsistent, some indicative of a chain, others indicative of not a chain.  For example, the description could include the word “Chain”; the VDL could include the word “Chain”; either field could also include the word “Cake”; the “Devices” column could have multiple devices (looking like a chain) or a single device (looking like not a chain).  If you are puzzling about the behavior of an item that might be a chain, you can follow these rules to determine if it is a chain: Table 1 – How the software determines if an effect is a chain Chain Not a chain In Effects window Row defines a chain if the VDL contains the word “Chain”, or if the VDL is empty but the VDL that would be created automatically from the “Description” column would contain the word “Chain”. Otherwise In Script Row is part of a chain if it has a reference number in the “Chain” column Otherwise   The number of devices that a chain effect in the Effect window represents is the number in the “Devices” column -- even if that number is inconsistent with the description or VDL of the effect.  This can be a source of confusion, because you might have an effect called “Chain of 5” with the number 10 in the “Devices” column.  Although it looks like a chain of 5 by the description (particularly if the “Devices” column happens to be hidden), the chain represents 10 devices.

Programmer documentation: Representation of chains in the script

In Finale 3D, chains are represented by one row in the script per device in the chain. It may not look like that, because the "Show chains as one row" setting in the Script window's gear menu is on by default, but regardless of the display format, each device is a single row behind the scenes. Thus a chain of 10 devices is represented by 10 rows. The rows are bound together by virtue of having the same reference number in the “Chain” column, which is also what determines whether the row is part of a chain at all (see “How can I tell if an effect is a chain?”). If a show had two chains, each with 10 devices, then the show would have 20 rows total, and 10 of those rows would probably have “Chain” values of #1; the other 10 would have “Chain” values of #2. When you insert a chain or import a show with chains, the chains will be expanded out in the script to one row per device. Imported scripts can represent chains as multiple rows, just like in the script window of Finale 3D, if the script format has a “Chain” column with distinct reference numbers for the chains. The Finale Generic CSV format supports this column. Most script formats don’t have “Chain” column with this meaning, though, so most script formats resort to representing a chain in a single row in the script. As mentioned earlier, the “Quantity” column in the script format may represent number of chains or number of devices. If a single row in the imported script represents an entire chain, or even multiple chains, then the row will be expanded in the import process to multiple rows in the Finale 3D script, one row per device. Chain reference numbers will be added automatically to group the devices of a chain together. If you are importing shows with chains, please look at the “Chain” column to understand what is going on. Rows in the script that are part of a chain, i.e., that have a reference number in the “Chain” column, are treated specially. To begin with, you will notice that they appear different on the timeline. You may also notice, perhaps by trial and error, that their “Duration” column is editable, and contains a value that is usually different from the “Duration” value of the corresponding chain effect definition in the Effects window. This is unusual. The “Duration” column in the script is only editable if the row is part of a chain, or if the row’s effect has type other_effect or not_an_effect. Otherwise, the duration is a reference to the effect definition itself. The reason rows that are parts of chains cannot have a reference to the effect definition is that the duration of a chain is the duration from first to last launch, not the duration of an effect in the chain. The chain’s duration would almost certainly be wrong for the effect in the chain. Thus when you import a show with chains, or when you insert chains into the script, the “Duration” field for those rows will be filled in automatically with the specified or default duration of the effect itself. Similar to the “Duration” column, chain rows in the script have a special column called “Chain Device VDL,” which is usually hidden. This field specifies the VDL for the row’s device, which could be different from other devices in the same chain, and is definitely different from being the entire chain. For example, the chain “Red Peony + Blue Peony + Green Peony Chain of 3” has three shells, all different. The VDL for the chain is that full description (the same for all rows in the chain). The VDLs for the devices in the chain are “Red Peony” “Blue Peony” and “Green Peony” (different for each row). Figure 1 – The “Used” column depends on “Devices” and the user setting: “Display chain...”   In the effects window, the “Used” column that shows the number of chains used depends on the “File > User settings > Display chain ‘Used’ quantity as per-shell” setting.  If you have this setting checked, then the number displayed in the “Used” column for chains is just the number of devices in the script of that part number.  However, if you have the setting un-checked, then the number displayed in the “Used” column for chains is the number of devices, divided by the “Devices” count in the effect window, unless the Devices count is blank or zero, which is treated the same as the value “1”.   The chain quantity in the “Description” field and the “VDL” field does not affect the Used quantity; only the Devices field does. Since chains are expanded into their constituent devices when the chains are imported or inserted, it is difficult to edit chain simulations after importing or inserting them. The "Edit simulation" function in the effect window changes the original definition of the chain, but that only affects the expanded devices in the script to the extent they still reference those characteristics from the chain definition. The Duration, Chain Device VDL, and Prefire fields, as well as the number of devices, are all decoupled from the chain definition after insertion, so editing the definition won't affect those characteristics of chains already inserted into the show.

Importing chains

Importing chains is complex because people follow different conventions for the meaning of chain quantity.  To some, quantity 10 of “Chain of 10” means a total of 10 devices; to others it means a total of 10 chains of 10 devices, for 100 devices total. Figure 1 – Does “Quantity = 5” mean 5 chains or 5 shells?   When importing a show, the dialog asks you if the chain quantity means number of chains or number of shells.  It’s really important that you answer that question correctly, or you could end up with 10 times as many chains as you want, or with boring chains of 1 shell each.  If your imported script format does not have a quantity column, then please select “Means number of chains”.  If it does have a quantity column, then select “Means number of chains” or “Means number of devices” depending on whether the quantities are the numbers of chains or the numbers of shells. The import dialog isn’t the only factor.  An effect description or VDL may specify the number of devices, as in “Red Peony Chain of 10” or may just indicate the effect is a chain and leave the number of devices off, as in “Red Peony Chain”, relying on the “Devices” or “Quantity” column to fill in the number. An imported show or effects list may or may not contain an optional “Devices” column or a “Quantity” column.  Depending on the presence of these columns, and the values in them, each row of the effects list or show will correspond to a certain number of devices inserted into the show (immediately for an imported show, or when clicking on an item from an imported effects list). Based on these variations and based on your choice in the import dialog, the following rules determine the number of inserted devices for a row of the imported effects list or show:   Table 1 – Factors affecting imported chains, and the number shells represented. Operation Quantity in VDL or Description column (X) Quantity in Devices or Quantity column (Y) Number of devices that will be inserted Importing effects Missing Missing 10 Importing effects 1 or more Missing X Importing effects Missing 1 or more Y Importing effects 1 or more 1 or more Y Importing show, number of devices option Missing Missing 1 Importing show, number of devices option 1 or more Missing 1 Importing show, number of devices option Missing 1 or more Y Importing show, number of devices option 1 or more 1 or more Y Importing show, number of chains option Missing Missing 10 Importing show, number of chains option 1 or more Missing X Importing show, number of chains option Missing 1 or more 10 * Y Importing show, number of chains option 1 or more 1 or more X * Y When importing a chain into a show from a single row or inserting chains into a show, the prefire of the chain applies both to the chain itself and to all the devices in the chain. In other words, the chain’s prefire and the prefire of its devices are one and the same. When importing a chain from multiple rows that are grouped together with the reference number in the “Chain” column, or when combining effects that already exist into the show into a chain, the first device’s prefire will be the prefire of the chain, and the other devices in the chain may have different prefires if they are different part numbers. When importing chains into a show, the effect definitions in the imported Per-show effects will have “Duration” equal to zero, and “Devices” equal to one, always. Neither of these fields is referenced by the chain rows of the script (see “Representation of chains in the script”). The same chain part number could be imported with different numbers of devices, which implies the duration and number of devices of the chain may not have a single unique definition. The values of these fields are cleared in order to guarantee consistent results. When importing chains into the Effects window, the duration of the chains is determined by: the “Duration” column in the imported row if present, else the duration specification in the “VDL” column if present, else the duration specification in the “Description” column if present, else a default duration calculated from the number of devices in the chain, that number of devices being the value in the “Devices” column if present, else the specification in the “VDL” column if present, else the specification in the “Description” column if present, else 10. The calculation of the default duration is, ChainDuration = ( NumberOfDevices - 1 ) * 0.05 The specification of the duration in the “VDL” or “Description” column is a quantity followed by the letter “s”, as in “8s Salute Chain Of 5”. The specification of the number of devices is either explicit, as in this “Chain Of 5” example, or implicit, based on the number of device descriptions are in the chain description, separated by plus signs (+), such as the chain of 3 devices described as, “Red Peony + Blue Peony + Green Peony Chain”. Figure 2 – The “Used” column depends on “Devices” and the user setting: “Display chain...”   In the effects window, the “Used” column that shows the number of chains used depends on the “File > User settings > Display chain ‘Used’ quantity as per-shell” setting.  If you have this setting checked, then the number displayed in the “Used” column for chains is just the number of devices in the script of that part number.  However, if you have the setting un-checked, then the number displayed in the “Used” column for chains is the number of devices, divided by the “Devices” count in the effect window, unless the Devices count is blank or zero, which is treated the same as the value “1”.   The chain quantity in the “Description” field and the “VDL” field does not affect the Used quantity; only the Devices field does.  Please note that the Devices field gets filled in from the Description or VDL field in the imported script, but thereafter the Devices column is independent.  If you manually change the Description or VDL fields after importing the show, that will not affect the Devices column and will thus not affect the displayed Used column. As you can conclude from the foregoing description, importing chains is complicated.  It is nearly impossible to edit chain simulations or specifications after importing them as part of a show, because when chains are inserted or imported, they are expanded to their constituent devices that are independent of the original chain definition with respect to multiple factors.  If you need to change chains after importing, the easiest solution is to delete them from the show and re-insert them manually.