my $col_name = 'P_DLRUOM';
my $entered_value = 'p_dlruom';
sub check_colname {
if ($col_name eq $entered_value) {
return 'equal';
};
return 'not equal';
};
####
sub validate_fields {
my ($colvalue,$colname) = @_;
if ($colname eq 'P_DLRUOM') {
warn "Checking '$colvalue' for validity in 'P_DLRUOM':";
return validate_p_dlruom( $updateval );
} elsif ($colname eq 'FOO') {
warn "Checking '$colvalue' for validity in 'FOO':";
return validate_foo( $updateval );
} else {
warn "Unknown column name '$colname' passed.";
return;
};
};
####
# Map the column name to the validator code:
my %validator = (
P_12MONTHDEMANDQTY => \&validate_number,
...
P_DLRUOM => \&validate_p_dlruom,
...
);
sub validate_fields
{
my ($updateval, $colname) = @_;
if (! exists $validator{ $colname }) {
warn "'$colname' is not a valid column name.";
};
my $code = $validator{ $colname };
if (! $code->($updateval, $colname)) {
warn "'$updateval' is not a valid value for '$colname'.";
} else {
warn "'$updateval' is a valid value for '$colname'.";
return 1
};
}