From 4b42b437333dfcee25fa00bbb92dccddaa4baff3 Mon Sep 17 00:00:00 2001 From: Ivan Kohler Date: Fri, 18 Nov 2016 14:35:21 -0800 Subject: [PATCH] notes import with class, RT#73455 --- httemplate/misc/cust_main_note-import.html | 4 +++- httemplate/misc/process/cust_main_note-import.cgi | 22 ++++++++++++++++------ 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/httemplate/misc/cust_main_note-import.html b/httemplate/misc/cust_main_note-import.html index cc1645d2e..003fc07a8 100644 --- a/httemplate/misc/cust_main_note-import.html +++ b/httemplate/misc/cust_main_note-import.html @@ -8,7 +8,9 @@ Import a CSV file containing customer notes records. File format is CSV, with the following field order: [custnum,] last, first, notefield1, notefield2, notefield3...
The optional custnum field is identified by being numeric. -Anything after the character sequence #! is ignored. +Anything after the character sequence #! is ignored. If a notefield starts +like classnum|, with a number followed by the pipe symbol (|), then it +the note will be imported into that note class.

<% &ntable("#cccccc") %> diff --git a/httemplate/misc/process/cust_main_note-import.cgi b/httemplate/misc/process/cust_main_note-import.cgi index 6625e0029..945689f89 100644 --- a/httemplate/misc/process/cust_main_note-import.cgi +++ b/httemplate/misc/process/cust_main_note-import.cgi @@ -40,7 +40,8 @@ my @uninserted = (); for ( my $row = 0; exists($param->{"custnum$row"}); $row++ ) { if ( $param->{"custnum$row"} ) { my $error = ''; - if ( $param->{use_comments} ) { # why? notes are sexier + if ( $param->{use_comments} ) { # why? notes are sexier (i think this can + # come out now? UI doesn't let you set it my $cust_main = qsearchs('cust_main', { 'custnum' => $param->{"custnum$row"} } ); @@ -53,12 +54,21 @@ for ( my $row = 0; exists($param->{"custnum$row"}); $row++ ) { $error = "Can't find customer " . $param->{"custnum$row"}; } } else { + + my $comments = $param->{"note$row"}; + my $classnum = ''; + if ( $comments =~ /^\s*(\d+)\s*\|\s*(.+)$/ ) { + $classnum = $1; + $comments = $2; + } + my $cust_main_note = new FS::cust_main_note { - 'custnum' => $param->{"custnum$row"}, - '_date' => $date, - 'otaker' => $otaker, - 'comments' => $param->{"note$row"}, - }; + 'custnum' => $param->{"custnum$row"}, + '_date' => $date, + 'otaker' => $otaker, + 'comments' => $comments, + 'classnum' => $classnum, + }; $error = $cust_main_note->insert unless ($op eq "Preview"); } my $result = { 'custnum' => $param->{"custnum$row"}, -- 2.11.0