如何使用xml-rpc在Odoo中使用和生产制造订单?

时间:2016-11-02 14:39:34

标签: python openerp

我正在创建这样的订单:

class FileSystemIcons
  include Singleton

  def initialize(display = Display.display) 
    fail(ArgumentError, 'No display given') unless display
    @display = display
    # ...
  end
end

然后准备好生产,然后开始生产,

new_manufacturing = models.execute_kw(db, uid, password,
'mrp.production', 'create',
[{'name':'M0001','product_id':155,'product_uom':1, 'bom_id':54, 'state':'draft'
}],)

但是当我这样做时:

reserve_materials = models.execute_kw(db, uid, password,
'mrp.production', 'force_production',
 [[new_man],{'context':False}])

start_production = models.execute_kw(db, uid, password,
 'mrp.production', 'action_in_production',
  [[new_man],{'context':False}])

它不消耗物料清单,产品不会出现在库存中。 (尽管生产的消息就在那里)。

P.S。我需要使用webservice API,因为我没有a更改服务器上的代码 printscreen from app

1 个答案:

答案 0 :(得分:0)

假设您在此处使用v9或更高版本。请注意,您使用的是v9 MRP并且具有与每条记录关联的工作流程,并且您正在调用直接对象 <?xml version="1.0" encoding="utf-8" ?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:local="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:fitsSystemWindows="true" android:background="@color/screen_backround_color" android:orientation="vertical" android:layout_weight="100"> <LinearLayout android:layout_width="wrap_content" android:layout_height="0dp" android:background="@drawable/frame_border" android:orientation="vertical" android:layout_marginLeft="15dp" android:layout_marginRight="15dp" android:layout_marginTop="15dp" android:layout_marginBottom="15dp" android:layout_weight="90"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:card_view="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" card_view:cardCornerRadius="0dp" card_view:cardElevation="0dp" card_view:contentPadding="15dp" card_view:cardUseCompatPadding="true" android:id="@+id/MainFormFirstRow"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="2" android:gravity="center_vertical" android:orientation="horizontal"> <!--Model Name--> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center_vertical" android:orientation="vertical"> <TextView style="@style/Base.TextAppearance.AppCompat.Headline" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Model Name" android:textColor="#ec1c24" android:textSize="16dp" android:textStyle="bold" /> <TextView android:id="@+id/editTextModelName" style="@style/Base.TextAppearance.AppCompat.Body1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#666666" android:textSize="30dp" android:textStyle="bold"/> </LinearLayout> <!--Serial Number, IP Address, Version--> <TableLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="1"> <TableRow> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="15dp" android:text="Model ID:" android:textColor="#ec1c24" android:textSize="14dp" android:textStyle="bold"/> <TextView android:id="@+id/editTextModelId" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="14dp" android:textColor="#666666"/> </TableRow> <TableRow> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="20dp" android:text="IP:" android:textColor="#ec1c24" android:textSize="14dp" android:textStyle="bold"/> <TextView android:id="@+id/editTextIPAddress" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="14dp" android:textColor="#666666"/> </TableRow> <TableRow> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginRight="20dp" android:text="BS Version:" android:textColor="#ec1c24" android:textSize="14dp" android:textStyle="bold"/> <TextView android:id="@+id/editTextPLC" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="14dp" android:textColor="#666666"/> </TableRow> </TableLayout> </LinearLayout> </android.support.v7.widget.CardView> <android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:card_view="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" card_view:cardCornerRadius="0dp" card_view:cardElevation="0dp" card_view:contentPadding="15dp" card_view:cardUseCompatPadding="true" android:id="@+id/MainFormSecondRow"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="2" android:gravity="center_horizontal" android:orientation="horizontal"> <!--IOMapping1--> <LinearLayout android:id="@+id/tableRowIOMapping1" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center_horizontal" android:orientation="horizontal"> <TextView android:id="@+id/textViewIOMapping1" style="@style/Base.TextAppearance.AppCompat.Headline" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Temperature" android:textColor="#6d6e70" android:textSize="16dp" android:textStyle="bold" /> <TextView android:id="@+id/editTextIOMapping1" style="@style/Base.TextAppearance.AppCompat.Body1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#8bc53f" android:textSize="30dp" android:textStyle="bold" android:enabled="false"/> </LinearLayout> <!--IOMapping2--> <LinearLayout android:id="@+id/tableRowIOMapping2" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center_horizontal" android:orientation="horizontal"> <TextView android:id="@+id/textViewIOMapping2" style="@style/Base.TextAppearance.AppCompat.Headline" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Pressure" android:textColor="#6d6e70" android:textSize="16dp" android:textStyle="bold" /> <TextView android:id="@+id/editTextIOMapping2" style="@style/Base.TextAppearance.AppCompat.Body1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#8bc53f" android:textSize="30dp" android:textStyle="bold" android:enabled="false"/> </LinearLayout> </LinearLayout> </android.support.v7.widget.CardView> <android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:card_view="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" card_view:cardCornerRadius="0dp" card_view:cardElevation="0dp" card_view:contentPadding="15dp" card_view:cardUseCompatPadding="true" android:layout_marginBottom="1dp" android:id="@+id/MainFormThirdRow"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="2" android:gravity="center_horizontal" android:orientation="horizontal"> <!--Current Cycle Name--> <LinearLayout android:id="@+id/tableRowIOMapping1" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center_horizontal" android:orientation="horizontal"> <TextView android:id="@+id/textViewCycleName" style="@style/Base.TextAppearance.AppCompat.Headline" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Current Cycle Name" android:textColor="#6d6e70" android:textSize="16dp" android:textStyle="bold" /> <LinearLayout android:id="@+id/editTextCycleName" style="@style/Base.TextAppearance.AppCompat.Headline" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="2" android:gravity="center_horizontal" android:orientation="horizontal"> <ImageView android:id="@+id/TwitterImage" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:layout_weight="1" android:src="@drawable/icon"> </ImageView> <TextView android:id="@+id/editTextCycleName" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#ff0000" android:layout_weight="1" android:textSize="16dp" android:textStyle="bold" android:enabled="false"/> </LinearLayout> </LinearLayout> <!--System Status--> <LinearLayout android:id="@+id/tableRowIOMapping2" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center_horizontal" android:orientation="horizontal"> <LinearLayout android:id="@+id/tableRowIOMapping2" android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="2" android:gravity="center_vertical" android:orientation="vertical"> <TextView android:id="@+id/textViewSystemStatus" style="@style/Base.TextAppearance.AppCompat.Headline" android:layout_width="wrap_content" android:layout_weight="1" android:layout_height="wrap_content" android:text="System Status" android:textColor="#6d6e70" android:textSize="16dp" android:textStyle="bold" /> <TextView android:id="@+id/editTextSystemStatus" style="@style/Base.TextAppearance.AppCompat.Body1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="1" android:textColor="#8bc53f" android:textSize="20dp" android:textStyle="bold" android:enabled="false"/> </LinearLayout> </LinearLayout> </LinearLayout> </android.support.v7.widget.CardView> <android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:card_view="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" card_view:cardCornerRadius="0dp" card_view:cardElevation="0dp" card_view:contentPadding="15dp" card_view:cardUseCompatPadding="true" android:layout_marginBottom="1dp" android:id="@+id/MainFormFirstRow"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="2" android:gravity="center_vertical" android:orientation="horizontal"> <!--Cycle Stage--> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="100" android:gravity="center_vertical" android:orientation="vertical"> <TextView android:id="@+id/textViewRefTemperature" style="@style/Base.TextAppearance.AppCompat.Headline" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_weight="10" android:text="Cycle Stage" android:textColor="#ec1c24" android:textSize="16dp" android:textStyle="bold" /> <TextView android:id="@+id/editTextCycleStage" style="@style/Base.TextAppearance.AppCompat.Body1" android:layout_weight="20" android:layout_marginLeft="20dp" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#231f20" android:textSize="30dp" android:textStyle="bold"/> <ImageView android:id="@+id/FacebookImage" android:layout_weight="70" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginLeft="20dp" android:src="@drawable/icon"> </ImageView> </LinearLayout> <TableLayout android:layout_width="0dp" android:layout_height="wrap_content" android:layout_weight="2"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center_vertical" android:orientation="vertical"> <!--Door State--> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center_vertical" android:orientation="vertical"> <TextView android:id="@+id/textViewChamberTemperature" style="@style/Base.TextAppearance.AppCompat.Headline" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Model Name" android:textColor="#ec1c24" android:textSize="16dp" android:textStyle="bold" /> <TextView android:id="@+id/editTextDoorState" style="@style/Base.TextAppearance.AppCompat.Body1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#ff0000" android:textSize="20dp" android:textStyle="bold"/> </LinearLayout> </LinearLayout> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="1" android:gravity="center_vertical" android:orientation="vertical"> <!--Cycle Error--> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center_vertical" android:orientation="vertical"> <TextView android:id="@+id/textViewRefTemperature" style="@style/Base.TextAppearance.AppCompat.Headline" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Model Name" android:textColor="#6d6e70" android:textSize="16dp" android:textStyle="bold" /> <TextView android:id="@+id/editTextCycleError" style="@style/Base.TextAppearance.AppCompat.Body1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#ff0000" android:textSize="30dp" android:textStyle="bold"/> </LinearLayout> </LinearLayout> </TableLayout> </LinearLayout> </android.support.v7.widget.CardView> <android.support.v7.widget.CardView xmlns:android="http://schemas.android.com/apk/res/android" xmlns:card_view="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="wrap_content" android:orientation="horizontal" card_view:cardCornerRadius="0dp" card_view:cardElevation="0dp" card_view:contentPadding="15dp" card_view:cardUseCompatPadding="true" android:layout_marginBottom="1dp" android:id="@+id/MainFormSixtRow"> <LinearLayout android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_weight="3" android:gravity="center_vertical" android:orientation="horizontal"> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center_vertical" android:orientation="vertical"> <TextView style="@style/Base.TextAppearance.AppCompat.Headline" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Ster. Temp:" android:textColor="#6d6e70" android:textSize="16dp" android:textStyle="bold" /> <TextView android:id="@+id/plc_ModelName" style="@style/Base.TextAppearance.AppCompat.Body1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#231f20" android:textSize="30dp" android:textStyle="bold"/> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center_vertical" android:orientation="vertical"> <TextView style="@style/Base.TextAppearance.AppCompat.Headline" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Ster. Time:" android:textColor="#ec1c24" android:textSize="16dp" android:textStyle="bold" /> <TextView android:id="@+id/plc_ModelName" style="@style/Base.TextAppearance.AppCompat.Body1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#666666" android:textSize="30dp" android:textStyle="bold"/> </LinearLayout> <LinearLayout android:layout_width="0dp" android:layout_height="match_parent" android:layout_weight="1" android:gravity="center_vertical" android:orientation="vertical"> <TextView style="@style/Base.TextAppearance.AppCompat.Headline" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Dry Time:" android:textColor="#ec1c24" android:textSize="16dp" android:textStyle="bold" /> <TextView android:id="@+id/plc_ModelName" style="@style/Base.TextAppearance.AppCompat.Body1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textColor="#666666" android:textSize="30dp" android:textStyle="bold"/> </LinearLayout> </LinearLayout> </android.support.v7.widget.CardView> </LinearLayout> </LinearLayout> </LinearLayout> 方法来操作记录,但它将失败原因是工作流引擎将拒绝您尝试绕过的操作。下面是ic正确的代码,它调用工作流程并调用消耗向导并触发它正确消耗它:

mrp.production

同时创建mrp.prodution时不传递状态或名称,它们是否具有系统生成的默认值。