Commit eebfdeec authored by Frank Bergmann's avatar Frank Bergmann

- Fixed import

parent 2fc08a5e
......@@ -109,6 +109,7 @@ for {set i 1} {$i < $max_row} {incr i} {
set object_type_pairs [list "" ""]
foreach field $object_fields { lappend object_type_pairs [string tolower $field] [string tolower $field] }
lappend object_type_pairs "hard_coded" "Hard Coded Functionality"
set cnt 0
foreach header_name $headers {
......@@ -117,10 +118,6 @@ foreach header_name $headers {
# Column - Name of the CSV colum
set column "<input type=hidden name=column.$cnt value=\"$header_name\">"
# Mapping - Map to which object field?
set default_map [string tolower $header_name]
set map [im_select map.$cnt $object_type_pairs $default_map]
# Parser - convert the value from CSV values to ]po[ values
set parser_sample_values [list]
for {set i 1} {$i <= $max_row} {incr i} {
......@@ -132,10 +129,16 @@ foreach header_name $headers {
ns_log Notice "import-2: otype=$object_type, field_name=$header_name => parser=$defs"
set default_parser [lindex $defs 0]
set default_parser_args [lindex $defs 1]
set override_map [lindex $defs 2]
set parser [im_select parser.$cnt $parser_pairs $default_parser]
set args "<input type=text name=parser_args.$cnt value=\"$default_parser_args\">\n"
# Mapping - Map to which object field?
set default_map [string tolower $header_name]
if {"" != $override_map} { set default_map $override_map }
set map [im_select map.$cnt $object_type_pairs $default_map]
if {"hard_coded" == $default_parser} { set map [im_select map.$cnt $object_type_pairs "hard_coded"] }
multirow append mapping $header_name $column $map $parser $args [lindex $row_1 $cnt] [lindex $row_2 $cnt] [lindex $row_3 $cnt] [lindex $row_4 $cnt] [lindex $row_5 $cnt]
incr cnt
......
......@@ -120,7 +120,9 @@ foreach csv_line_fields $values_list_of_lists {
set customer_id ""
set parent_nrs ""
set parent_id ""
set project_status ""
set project_status_id ""
set project_type ""
set project_type_id ""
set project_lead_id ""
......@@ -143,7 +145,6 @@ foreach csv_line_fields $values_list_of_lists {
set expected_quality_id ""
set final_company ""
set milestone_p ""
set project_priority ""
set sort_order ""
set source_language_id ""
set subject_area_id ""
......@@ -151,6 +152,7 @@ foreach csv_line_fields $values_list_of_lists {
set cost_center ""
set uom ""
set material ""
set planned_units ""
set billable_units ""
set priority ""
......@@ -196,6 +198,9 @@ foreach csv_line_fields $values_list_of_lists {
foreach varname $var_name_list {
set p $parser($i)
set p_args $parser_args($i)
set target_varname $map($i)
ns_log Notice "import-im_project: Parser: $varname -> $target_varname"
switch $p {
no_change { }
default {
......@@ -206,16 +211,17 @@ foreach csv_line_fields $values_list_of_lists {
set result [$proc_name -parser_args $p_args $val]
set res [lindex $result 0]
set err [lindex $result 1]
ns_log Notice "import-im_project: Parser: '$p -args $p_args $val' -> $target_varname=$res, err=$err"
if {"" != $err} {
if {$ns_write_p} {
ns_write "<li><font color=brown>Warning: Error parsing field='$varname' using parser '$p':<pre>$err</pre></font>\n"
ns_write "<li><font color=brown>Warning: Error parsing field='$target_varname' using parser '$p':<pre>$err</pre></font>\n"
}
}
set $varname $res
set $target_varname $res
}
} err_msg]} {
if {$ns_write_p} {
ns_write "<li><font color=brown>Warning: Error parsing field='$varname' using parser '$p':<pre>$err_msg</pre></font>"
ns_write "<li><font color=brown>Warning: Error parsing field='$target_varname' using parser '$p':<pre>$err_msg</pre></font>"
}
}
}
......@@ -277,9 +283,6 @@ foreach csv_line_fields $values_list_of_lists {
# On track status can be NULL without problems
set on_track_status_id [im_id_from_category [list $on_track_status] "Intranet Project On Track Status"]
# Priority has been introduced by department planner...
set project_priority_id [im_id_from_category [list $project_priority] "Intranet Department Planner Project Priority"]
# customer_id
if {"" == $customer_id } {
set customer_id [db_string cust "select company_id from im_companies where lower(company_name) = trim(lower(:customer_name))" -default ""]
......@@ -381,7 +384,6 @@ foreach csv_line_fields $values_list_of_lists {
project_budget = :project_budget,
project_budget_currency = :project_budget_currency,
project_budget_hours = :project_budget_hours,
project_priority_id = :project_priority_id,
company_contact_id = :customer_contact_id,
company_project_nr = :customer_project_nr,
note = :note,
......@@ -409,7 +411,9 @@ foreach csv_line_fields $values_list_of_lists {
)
" -default ""]
if {"" == $material_id} {
if {$ns_write_p} { ns_write "<li><font color=brown>Warning: Didn't find material '$material', using 'Default'.</font>\n" }
if {$ns_write_p} {
ns_write "<li><font color=brown>Warning: Didn't find material '$material', using 'Default'.</font>\n"
}
}
}
if {"" == $material_id} {
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment