Problem creating a Material Request via API REST

Hi everyone!.

I’m trying to post a new Material Request via API REST and i’m getting the following issue:

Here is the trackback:

Traceback (innermost last):
  File "/home/frappe/frappe-bench/apps/frappe/frappe/app.py", line 60, in application
    response = frappe.api.handle()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/api.py", line 116, in handle
    "data": frappe.get_doc(data).insert().as_dict()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 194, in insert
    self.run_before_save_methods()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 627, in run_before_save_methods
    self.run_method("validate")
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 588, in run_method
    return Document.hook(fn)(self, *args, **kwargs)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 752, in composer
    return composed(self, method, *args, **kwargs)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 735, in runner
    add_to_return_value(self, fn(self, *args, **kwargs))
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 582, in 
                                                            <lambda>
    fn = lambda self, *args, **kwargs: getattr(self, method)(*args, **kwargs)
  File "/home/frappe/frappe-bench/apps/erpnext/erpnext/stock/doctype/material_request/material_request.py", line 64, in validate
    super(MaterialRequest, self).validate()
  File "/home/frappe/frappe-bench/apps/erpnext/erpnext/controllers/buying_controller.py", line 27, in validate
    super(BuyingController, self).validate()
  File "/home/frappe/frappe-bench/apps/erpnext/erpnext/controllers/accounts_controller.py", line 48, in validate
    self.validate_party()
  File "/home/frappe/frappe-bench/apps/erpnext/erpnext/controllers/accounts_controller.py", line 417, in validate_party
    validate_party_frozen_disabled(party_type, party)
  File "/home/frappe/frappe-bench/apps/erpnext/erpnext/accounts/party.py", line 319, in validate_party_frozen_disabled
    if party.disabled:
 AttributeError: 'NoneType' object has no attribute 'disabled'

What could be the problem?

Hoping you can help me with this issue. Thanks for your time!

Francisco Javier Ugalde

Can you share your request parameters?

Here is the json object that i’m sending via POST to the API REST of the ERPNext

{
   "title":"Purchase",
   "material_request_type":"Purchase",
   "company":"Roostack",
   "status":"Approved",
   "terms":"Nuestro presupuesto incluye solamente la entrega en nuestra bodega ubicada en Llano Bonito o segun especificaciones en el cuadro Informacion.\r\nSi el Cliente no esta listo para recibir la mercanc\u00eda se cobrar\u00e1 almacenaje de un 3% del Valor del Contrato mensualmente,  y se le cobrar\u00e1 el doble cargo de descargue y transporte el cual ser\u00e1 el 2% del Contrato. Artecasa no se responsabiliza por da\u00f1os ocurridos en este proceso.\r\n- Por ser la piedra un producto de la naturaleza, el mismo esta sujeto a variaciones de tono, color y veta, por lo tanto, nosotros no podemos garantizarle que el material sea id\u00e9ntico a la muestra observada por usted.\r\n- No nos hacemos responsables por los da\u00f1os secundarios causados por la demora de los materiales.\r\n- La entrega del material en la obra se har\u00e1 con un costo adicional de transporte.\r\n- Una vez entregado el pedido en obra no nos hacemos responsables de ning\u00fan da\u00f1o, ruptura y\/o mancha que pueda  ocurrir por una instalaci\u00f3n deficiente o mal manejo de los materiales.\r\n- No nos hacemos responsables del material desde el momento que se retira de nuestra bodega.\r\n- Para retirar materiales en la Bodega es necesario llevar la cotizaci\u00f3n aprobada o la factura de compra.\r\n- Se descontar\u00e1 un 20% del valor de la mercanc\u00eda por devoluciones que no tengan las cajas cerradas y\/o las planchas intactas.\r\n\r\nVisita nuestro sitio web: www.artecasapanama.com\r\nHorarios de Atenci\u00f3n:  Lunes a Viernes de 9:00 am - 1:00 pm y de 2:00 pm - 6:00 pm, no abrimos los S\u00e1bados\r\n\r\n\r\nAtentamente:      _____________________________                    Aprobado por:        _____________________________\r\n                                           ARTECASA                                                                                              CLIENTE",
   "reference":"trav tipo romano \/ Raquel Gilinski",
   "transaction_date":"2016-04-29",
   "client_code":"",
   "purchase_order":"",
   "expiration_date":"2016-03-08",
   "customer":"CASTILLO, PORFIDIO",
   "order_no":"PED2068",
   "enable_recurring":"0",
   "recurring_frequency":"--None--",
   "start_period":"2016-03-09",
   "end_period":"2016-03-09",
   "payment_duration":"Net 30 days",
   "paid":"0",
   "sales_commission":"0.000",
   "description":"to be finded...",
   "items":[
      {
         "item_code":"MS-TV-SC-CLS-30X30X1",
         "customer_item_code":"MS-TV-SC-CLS-30X30X1",
         "item_name":"MOSAIQUILLO TRAV CLASSICO MALLAS",
         "description":"1.5X1.5\r\nPara z\u00f3calos \r\nPara entrega en 45 d\u00edas",
         "comment":"",
         "qty":"16.000",
         "warehouse":"Stores - RS",
         "rate":"120.000",
         "amount":"1920"
      },
      {
         "item_code":"TV-CHI-TD-MTM-MV",
         "customer_item_code":"TV-CHI-TD-MTM-MV",
         "item_name":"TRAVERTINO CHIARO TUMBLED TIPO ROMANO (MTM)",
         "description":"30X20 20X20 20X10 10X10",
         "comment":"",
         "qty":"14.580",
         "warehouse":"Stores - RS",
         "rate":"38.000",
         "amount":"554.04"
      }
   ]
}

You might also have to add "doctype": "Material Request" to the parameters