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") {