Author: spadkins
Date: Fri Dec 12 12:44:37 2008
New Revision: 12155

Modified:
   p5ee/trunk/App-Repository/lib/App/Repository/Oracle.pm

Log:
Support exprs in sql loader ctl files

Modified: p5ee/trunk/App-Repository/lib/App/Repository/Oracle.pm
==============================================================================
--- p5ee/trunk/App-Repository/lib/App/Repository/Oracle.pm      (original)
+++ p5ee/trunk/App-Repository/lib/App/Repository/Oracle.pm      Fri Dec 12 
12:44:37 2008
@@ -569,6 +569,9 @@
     my ($self, $ctlfile, $table, $columns, $options) = @_;
     my $table_def = $self->get_table_def($table);
     my $field_sep = $options->{field_sep} || "|";
+    my $context_options = $self->{context}{options};
+    my $dbname = $self->{name};
+   
     open(FILE, "> $ctlfile") || die "Unable to open $ctlfile: $!";
     print FILE <<EOF;
 Load Data
@@ -581,9 +584,14 @@
     my ($column, $type);
     for (my $i = 0; $i <= $#$columns; $i++) {
         $column = $columns->[$i];
+        my $expr = $table_def->{column}{$column}{import_expr} || 
$context_options->{"app.Repository.$dbname.$table.column.$column.import_expr"};
+
         print FILE "   $column";
         $type = $table_def->{column}{$column}{type};
-        if ($type eq "date") {
+        if ($expr) {
+            print FILE " \"$expr\"";
+        }
+        elsif ($type eq "date") {
             print FILE ' date "YYYY-MM-DD"';
         }
         elsif ($type eq "datetime") {

Reply via email to