Class: NexusLink::NAX::PedidoVenta
- Inherits:
-
WIN32OLE
- Object
- WIN32OLE
- NexusLink::NAX::PedidoVenta
- Defined in:
- lib/nexus_link/nax/pedido_venta.rb
Instance Attribute Summary collapse
-
#attributes ⇒ Object
Returns the value of attribute attributes.
Class Method Summary collapse
Instance Method Summary collapse
- #add_line(line) ⇒ Object
- #AsStringCab ⇒ Object
- #AsStringLin ⇒ Object
-
#initialize ⇒ PedidoVenta
constructor
A new instance of PedidoVenta.
- #refresh_attrs(delta = {}) ⇒ Object
- #save ⇒ Object
- #save_line(attrs) ⇒ Object
- #update_line(rec_id, delta) ⇒ Object
Constructor Details
#initialize ⇒ PedidoVenta
Returns a new instance of PedidoVenta.
73 74 75 76 77 |
# File 'lib/nexus_link/nax/pedido_venta.rb', line 73 def initialize @progid = "NAX.Albaran" super @progid @attributes = {} end |
Instance Attribute Details
#attributes ⇒ Object
Returns the value of attribute attributes.
4 5 6 |
# File 'lib/nexus_link/nax/pedido_venta.rb', line 4 def attributes @attributes end |
Class Method Details
.circuit ⇒ Object
6 7 8 |
# File 'lib/nexus_link/nax/pedido_venta.rb', line 6 def self.circuit @circuit end |
.circuit=(value) ⇒ Object
10 11 12 |
# File 'lib/nexus_link/nax/pedido_venta.rb', line 10 def self.circuit=(value) @circuit = value end |
.create(attrs) ⇒ Object
16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 |
# File 'lib/nexus_link/nax/pedido_venta.rb', line 16 def self.create(attrs) attrs.reject! { |k, v| v.nil? } NAX.open fecha = attrs['FCHA'] || Time.now.strftime('%d/%m/%Y') codcli = attrs['CODCLI'] result = NAX::PedidoVenta.new result.attributes = attrs.clone result.Iniciar NAX.check result.Nuevo(fecha, codcli , self.circuit == :compra) NAX.check attrs['IDALBV'] = result.AsStringCab['IDALBV'] result.refresh_attrs(attrs) result end |
Instance Method Details
#add_line(line) ⇒ Object
52 53 54 55 56 |
# File 'lib/nexus_link/nax/pedido_venta.rb', line 52 def add_line(line) self.NuevaLinea NAX.check save_line(line) end |
#AsStringCab ⇒ Object
79 80 81 |
# File 'lib/nexus_link/nax/pedido_venta.rb', line 79 def AsStringCab OLEProperty.new(self, 15, [VT_BSTR], [VT_BSTR, VT_BSTR]) end |
#AsStringLin ⇒ Object
83 84 85 |
# File 'lib/nexus_link/nax/pedido_venta.rb', line 83 def AsStringLin OLEProperty.new(self, 19, [VT_BSTR], [VT_BSTR, VT_BSTR]) end |
#refresh_attrs(delta = {}) ⇒ Object
47 48 49 50 |
# File 'lib/nexus_link/nax/pedido_venta.rb', line 47 def refresh_attrs(delta={}) attributes.keys.each { |key| attributes[key] = self.AsStringCab[key.to_s] } attributes.merge! delta end |
#save ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 43 44 45 |
# File 'lib/nexus_link/nax/pedido_venta.rb', line 32 def save attributes.each do |key, val| old_val = self.AsStringCab[key.to_s] unless val == old_val val = '' if val.nil? self.AsStringCab[key.to_s] = val end end self.Anade self.Acabar NAX.check refresh_attrs self end |