request_quotation => 'OrderItem',
invoice => 'InvoiceItem',
invoice_for_advance_payment => 'InvoiceItem',
+ final_invoice => 'InvoiceItem',
purchase_invoice => 'InvoiceItem',
credit_note => 'InvoiceItem',
purchase_delivery_order => 'DeliveryOrderItem',
$obj->${\"$method\_as_date"}($value);
} elsif ((ref $obj->meta->column($method)) =~ /^Rose::DB::Object::Metadata::Column::(?:Numeric|Float|DoublePrecsion)$/) {
$obj->${\"$method\_as_number"}($value);
+ } elsif ((ref $obj->meta->column($method)) =~ /^Rose::DB::Object::Metadata::Column::(?:Big)?(?:Int(?:eger)?|Serial)$/) {
+ $obj->$method(($value // '') eq '' ? undef : $value * 1);
} elsif ((ref $obj->meta->column($method)) =~ /^Rose::DB::Object::Metadata::Column::Boolean$/) {
$obj->$method(!!$value);
} else {
sales_delivery_order => 'DeliveryOrder',
}->{$::form->{type}};
- if ($::form->{type} =~ /invoice|invoice_for_advance_payment|credit_note/) {
+ if ($::form->{type} =~ /invoice|credit_note/) {
$class = $::form->{vc} eq 'customer' ? 'Invoice'
: $::form->{vc} eq 'vendor' ? 'PurchaseInvoice'
: do { die 'unknown invoice type' };
$obj->${\"$method\_as_date"}($::form->{$method});
} elsif ((ref $obj->meta->column($method)) =~ /^Rose::DB::Object::Metadata::Column::(?:Numeric|Float|DoublePrecsion)$/) {
$obj->${\"$method\_as\_number"}($::form->{$method});
+ } elsif ((ref $obj->meta->column($method)) =~ /^Rose::DB::Object::Metadata::Column::(?:Big)?(?:Int(?:eger)?|Serial)$/) {
+ $obj->$method(($::form->{$method} // '') eq '' ? undef : $::form->{$method} * 1)
} elsif ((ref $obj->meta->column($method)) =~ /^Rose::DB::Object::Metadata::Column::Boolean$/) {
$obj->$method(!!$::form->{$method});
} else {