Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Overview

The CSV import is a convenient way for adding and creating multiple parts at once. Furthermore, the CSV import functionality - together with CSV export - can be used for bulk editing of existing parts.

In order to perform a CSV import, a well-structured CSV file with part data is required. A convenient way of getting a valid CSV file template is to create a CSV export and delete the parts data. A CSV export file is always a valid CSV import file.

Standard Columns

Every standard property is accessible within the scripts by using the variables.standard environment. Within the CSV upload, the values to be filled are values.standard. For example, the material class is accessible through: values.standard.material_class.

Every property found on a platform is accessible at: yourplatform3yourmind.com/admin/b3_ampi/all-properties/.

Here is an overview of the standard columns that can - and most of them should - be part of every CSV import file.

Name

Field Name

Description

Type

Display Type

Choices

Name

standard.name

string

single-line

Description

standard.

...

Column

Mandatory column

Explanation

Examples

branch

Yes

Defines the part category that this part is assigned to when importing. The category corresponds to the form you would will out when creating the part manually in AMPI.

The available categories (or branches) can be looked up in the admin panel under
Home › B3_Ampi › Branches

Valid values are the slug values of each branch.

branch = sparepart
branch = prototype

branchIsAdvanced

Yes

Determines whether the simplified or advanced from should be loaded when editing this part. See also Branches

branchIsAdvanced = FALSE
branchIsAdvanced = TRUE

status

No

Defines the part status that is assigned to this part when created.

The available statuses can be looked up in the admin panel under
Home › B3_Ampi › Statuses

Valid values are the slug values of each status.
If this column is not part of the import, then the default initial status of the branch is assigned.

status = draft

author

No

Optional column during import

User name of the user that should be assigned as part author.

If column is not part of the import file, or value is blank, then the user performing the CSV import will be set as part author

author = xyz@3yourmind.com

shortId

No

Can be used to match to be imported parts with parts already in AMPI. If shortId already exists, then CSV import will update the existing part with values from the CSV import instead of creating a new part.

shortId = P-12345

values.standard.name

yes

The name of the part.

Name = "Tube connector metal"

description

string

multi-line

Attachments

standard.attachments

files

files

Current Part Price

standard.current_part_price

The current part price or order price of the part

currency

currency

Demand Frequency

standard.demand_frequency

Indicates a yearly recurring or a one-time demand

choice

radio

demandOneTime - One-time
demandYearly - Yearly

Demand Quantity

standard.demand_quantity

Number of parts needed as per frequency

integer

number

Lead Time

standard.lead_time

Lead time in days. The time between when a purchase order is placed to replenish this product and when the order is received in the warehouse

integer

number

Minimum Order Quantity

standard.min_order_quantity

integer

number

Parts in stock

standard.parts_in_stock

Number of parts currently in stock

integer

number

Surface Area

standard.surface_area

Part surface area

float

None

Part Volume

standard.part_volume

float

None

Concave Hull Volume

standard.concave_hull_volume

float

None

Bounding Box Volume

standard.bounding_box_volume

float

None

Support Volume

standard.support_volume

float

None

Support Area

standard.support_area

float

None

Size

standard.size

Size

size

advanced

Shells

standard.shells

integer

None

Faces

standard.faces

integer

None

Average Wall Thickness

standard.average_wall_thickness

float

None

Printable Thin Walls

standard.printable_thin_walls

float

None

Suspicious Thin Walls

standard.suspicious_thin_walls

float

None

Weight

standard.weight

float

float

Tolerance Minimum Deviation

standard.tolerance_minimum_deviation

Tightest tolerance for the linear length dimensions required for the part, as specified on its Technical Drawing or Part Documentation. The tightest tolerance is important for the part technical assessment as it can influence suitable technologies, machines, materials and required post-processings.

float

float

Tolerance Maximum Deviation

standard.tolerance_maximum_deviation

Tightest tolerance for the linear length dimensions required for the part, as specified on its Technical Drawing or Part Documentation. The tightest tolerance is important for the part technical assessment as it can influence suitable technologies, machines, materials and required post-processings.

float

float

Surface Roughness

standard.surface_roughness

Surface roughness is one component of describing how the shape of a surface deviates from its ideal form, where higher values correspond to rougher surfaces while lower values indicate the surface is smooth. Surface roughness requirements can influence suitable technologies, machines, materials and required post-processings.

choice

drop-down

0.4 - 0.4 μm / 16 μin
0.8 - 0.8 μm / 32 μin
1.6 - 1.6 μm / 63 μin
3.2 - 3.2 μm / 125 μin
6.3 - 6.3 μm / 250 μin
12.5 - 12.5 μm / 500 μin

Surface to Finish

standard.surface_to_finish

Select the area where the desired average surface roughness is applied to: the whole manufactured part or only specific surfaces. The amount of surfaces to be finished has an influence on the manufacturing costs.

choice

drop-down

entire_part - Entire Part
locations - Locations

Locations to Finish

standard.locations_to_finish

integer

number

Manufacturing Method

standard.manufacturing_method

Select the current manufacturing technology of how the part is made. Multiple selection possible

multiple-choice

drop-down

Material

standard.material

Select the exact material which the original part is made of. Along with specific design requirements, the material provides us with specific properties to support you in choosing the appropriate substitute material to manufacture the part. Note: if the original material is not listed, select the option ”Other material” and enter a specific name in the designated text field.

choice

drop-down

Products

For conventional materials, they are also found in our IKB page:
/wiki/spaces/IK/pages/2065661980

Material Class

standard.material_class

Select the high level material class (e.g. metal, plastic, etc.) which the original part is made of. The material class strongly influences the suitability of future manufacturing processes and is essential to conduct technical assessment.

choice

drop-down

Category

For conventional materials, they are also found in our IKB page:
/wiki/spaces/IK/pages/2065661980

Material Type

standard.material_type

Select the material type (e.g. ABS, Aluminum, etc.) which the original part is made of. The material type provides us with essential information to support you in choosing the appropriate substitute material to manufacture the part.

choice

drop-down

Category

For conventional materials, they are also found in our IKB page:
/wiki/spaces/IK/pages/2065661980

Other Material

standard.other_material

If the current part material is not listed, write its name

string

single-line

Allow Material Class Exchange

standard.allow_material_class_exchange

Indicate if a material class exchange is allowed to produce the submitted part (e.g. metal to plastic or vice versa).

boolean

toggle

Substitute Material

standard.substitute_material

AM material with which the original material will be substituted to accommodate AM production of the part

choice

drop-down

Technologies

AM Support Structures Allowed

standard.support_allowed

Indicates if AM support structures are allowed (inside or outside) the model

boolean

toggle

Department

standard.department

Company department

string

single-line

Part Manufacturer

standard.manufacturer

string

single-line

CAGE code

standard.cage_code

A Commercial and Government Entity (CAGE) code is a unique identifier assigned to suppliers to various government or defense agencies, as well as to government agencies themselves and also various organizations. CAGE codes provide a standardized method of identifying a given facility at a specific location.

string

single-line

Qualification is needed

standard.qualification_needed

boolean

toggle

Serial Number

standard.serial_number

string

single-line

2D Drawing Available

standard.twod_drawing_available

boolean

toggle

3D Drawing Available

standard.threed_drawing_available

boolean

toggle

Assembly

standard.is_assembly

Indicates if the object is an assembly and not a single part

boolean

toggle

Current Procurement

standard.current_procurement

Indicate whether the submitted part is originally produced in-house or acquired from external sources.

choice

radio

inHouse - In-house
outsourced - Outsourced

Part Visible

standard.part_visible

boolean

toggle

Intellectual Property Owner

standard.intellectual_property_owner

boolean

toggle

Transparency

standard.transparency

Is the part required to be transparent, translucent or opaque? https://sciencestruck.com/difference-between-translucent-transparent-opaque-materials

choice

slider

opaque - Opaque
transparent - Transparent
translucent - Translucent

Safety Class

standard.safety_class

Select the safety class associated to the submitted part, indicating the required part safety from lowest to highest.

choice

radio

unknown - Unknown
low - Low
medium - Medium
high - High

Flame Retardancy

standard.flame_retardancy

According to the safety standard UL 94, select the flame classification required for the part. The standard categorizes the flammability of plastic materials and their ability to self-extinguish and resist to ignition when exposed to a flame source.

choice

radio

HB - HB
V-2 - V-2
V-1 - V-1
V-0 - V-0
5VB - 5VB
5VA - 5VA

Next Assembly

standard.next_assembly

Enter the assembly drawing number on which the part is next utilized, modified, or assembled.

string

single-line

Used on

standard.used_on

Enter the name or acronym name of the product or system this part is used on.

string

single-line

Number of Inserts

standard.number_of_inserts

Enter the amount of inserts to be added to manufacture the part according to its specifications.

integer

number

Number of Threads

standard.number_of_threads

Enter the amount of threads to cut to manufacture the part according to its specifications.

integer

number

Number of Holes

standard.number_of_holes

Enter the amount of holes to be drilled or machined to manufacture the part according to its specifications.

integer

number

General Tolerances for Dimensions (ISO 2768-1)

standard.general_tolerances_dimensions

ISO 2768-1 stands for the general part tolerances for linear and angular dimensions without individual tolerance indications. Select the required class as specified in the part technical drawing title block or part documentation.

choice

radio

v - v - very coarse
c - c - coarse
m - m - medium
f - f - fine

Geometrical Tolerances for Features (ISO 2768-2)

standard.geometrical_tolerances_features

ISO 2768-2 stands for the geometrical tolerances for part features (flatness & straightness, cylindricity and circularity) without individual tolerance indications. Select the required class as specified in the part technical drawing title block or documentation.

choice

radio

h - H
k - K
l - L

Minimum Tensile Strength

standard.min_tensile_strength

Tensile strength is the maximum amount of tensile stress a material can withstand before it fails or breaks. Enter the minimum amount (in MPa) which the final part is required to withstand.

float

float

Minimum Tensile Modulus

standard.min_tensile_modulus

Tensile modulus is a mechanical property that measures stiffness. It is defined as the ratio of its tensile stress to its strain when undergoing elastic deformation. Enter the minimum amount required for the final part.

float

float

Minimum Flexural Strength

standard.min_flexural_strength

Flexural strength is the ability to resist bending deflection when energy is applied to the structure. Enter the minimum amount which the final part is required to withstand.

float

float

Minimum Yield Strength

standard.min_yield_strength

Yield strength is a measurement to determine the maximum stress that can be applied before permanent deformation is reached in ductile materials. Enter the minimum amount which the final part is required to withstand.

float

float

technology

am.technology

choice

-

Technologies

category

am.category

choice

-

Category

material

am.material

choice

-

Products

post_processings

am.post_processings

multi-choice

-

A number of columns are ignored by the CSV import if they are part of the import file. Those columns are

Column

Description

All score columns

Scores are always calculated inside the software, hence ignored during CSV import.

values.standard.attachments

It is

not

possible to upload attachments via CSV,

therefore this column is ignored.stl_file_id

by filling the values.standard.attachments column in the import.

stlFile

It is

not

possible to upload 3d files via CSV by matching the CAD model name to the part.

Custom Property Columns

...

To import values into custom properties the column names need to match the property configuration in the admin panel. The following naming convention must be followed

variables.<name space>.<variable name>

Example

To import lead time into AMPI you add a column as follows to your CSV

...

:

variables.custom.leadTimeExact

What values are accepted in each column depends on the property type of the respective column. The following table explains what values are expected in relation to the property type.

Property Type

Description

Example

Boolean

Fill in values using [TRUE, FALSE]

Qualification Required = TRUE

Choice

Slug of a choice value. Check the corresponding property in the admin panel to find out the exact slug values available.

Demand frequency = demandOneTime

Currency

Decimal values with maximum two digits after the decimal point

Current part price = 12.84

Files

Attachments cannot be imported into AMPI via CSV

Float

Decimal numbers

Min wall thickness = 0.4

Integer

Whole numbers, can also be negative

Lead time = 25

Multiple-Choice

Slugs of choice values separated by a space " "

Manufacturing method = milling turning sheetMetal

Size

Size (dimensions) is a special property type in AMPI. Next to the x,y,z dimension you need to provide a shape type s = {sphere, cylinder, cuboid}.
For type sphere you need to provide only 1 dimension, for cylinder only 2 dimensions and for cuboid 3 dimensions.

Ex. 1
....size.s = sphere
….size.x = 24.4

Ex. 2
....size.s = cylinder
….size.x = 24.4
….size.y = 10.0

Ex. 3
....size.s = cylinder
….size.x = 24.4
….size.y = 10.0
….size.z = 14.0

String

For text fields simply fill in the text as needed.

Manufacturer = "Company XYZ"

Bulk Update of Parts in AMPI through CSV Import

A combination of CSV export and CSV import can be used to bulk update parts in AMPI by following these steps:

  1. Run a CSV export to produce a CSV file of the existing parts in AMPI.

  2. Open the CSV export file in any tool capable of reading and editing CSV files.

  3. Modify the values of those parts and columns that you wish to change.

  4. Export the entire changed file to CSV format again.

  5. Run CSV import with the updated CSV file.

  6. The CSV import will match the parts from the CSV import file with existing parts in AMPI based on the ShortID column and update the changed values.