Physical Inventory Adjustment 遇到Stuck MMTT with Error ‘Total lot transaction does not match transac’

本文提供了解决MMTTStuckERROR‘Totallottransactiondoesnotmatchtransactionquantity’的方法,包括更新相关表的LOT_NUMBER字段、插入MTLT记录以及更新stuckmmtt记录状态。通过执行特定的SQL指令,可以解决库存交易中遇到的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  当遇到MMTT Stuck ERROR ‘Total lot transaction does not match transaction quantity’ ,检查如下表格对应的LOT_NUMBER字段:

  MTL_MATERIAL_TRANSACTIONS_TEMP

  MTL_PHYSICAL_ADJUSTMENTS

  MTL_PHYSICAL_INVENTORY_TAGS


  如果对应的LOT_NUMBER字段是空的,并且查看MMTT对应的MTLT的记录为空,这需要手动写脚本插入MTLT记录以及UPDATE 对应表格的LOT_NUMBER字段。


MTL_TRANSACTION_LOTS_TEMP的数据大多数是从MTL_MATERIAL_TRANSACTIONS_TEMP那边继承过来的。


mtlt.transaction_temp_id = mmtt.transaction_temp_id

mtlt.group_header_id = mmtt.transaction_header_id

last_updated_by, created_by, last_update_login, request_id, program_application_id,program_id, transaction_quantity和primary_quantity 都是继承MMTT表格里面的数据。 对于status_id 那些字段,则是是从MTL_LOT_NUMBERS里面获取的。


可以通过下面的datafix 解决这个问题:


先更新几个表格的LOT_NUMBER字段,注意提供的lot_number必须有足够的onhand在库里面。

UPDATE MTL_MATERIAL_TRANSACTIONS_TEMP
SET   LOT_NUMBER            = 'IED-LCRM18'
     ,LAST_UPDATE_LOGIN     = -18934520
WHERE TRANSACTION_TEMP_ID   = 23965292
AND   TRANSACTION_HEADER_ID = 24746069;


UPDATE MTL_PHYSICAL_ADJUSTMENTS
SET  LOT_NUMBER             = 'IED-LCRM18'
    ,LAST_UPDATE_LOGIN      = -18934520
WHERE ADJUSTMENT_ID         = 124998
AND   ORGANIZATION_ID       = 340
AND   PHYSICAL_INVENTORY_ID = 5053;

UPDATE MTL_PHYSICAL_INVENTORY_TAGS
SET  LOT_NUMBER             = 'IED-LCRM18'
    ,LAST_UPDATE_LOGIN      = -18934520
WHERE TAG_ID                = 124357
AND   PHYSICAL_INVENTORY_ID = 5053
AND   ORGANIZATION_ID       = 340
AND   ADJUSTMENT_ID         = 124998;


完成更新之后,插入对应的MTLT记录:

INSERT INTO MTL_TRANSACTION_LOTS_TEMP
    (TRANSACTION_TEMP_ID
,      LAST_UPDATE_DATE
,      LAST_UPDATED_BY
,      CREATION_DATE
,      CREATED_BY
,      LAST_UPDATE_LOGIN
,      REQUEST_ID
,      PROGRAM_APPLICATION_ID
,      PROGRAM_ID
,      PROGRAM_UPDATE_DATE
,      TRANSACTION_QUANTITY
,      PRIMARY_QUANTITY
,      LOT_NUMBER
,      LOT_EXPIRATION_DATE
,      ERROR_CODE
,      SERIAL_TRANSACTION_TEMP_ID
,      GROUP_HEADER_ID
,      PUT_AWAY_RULE_ID
,      PICK_RULE_ID
,      DESCRIPTION
,      VENDOR_NAME
,      SUPPLIER_LOT_NUMBER
,      ORIGINATION_DATE
,      DATE_CODE
,      GRADE_CODE
,      CHANGE_DATE
,      MATURITY_DATE
,      STATUS_ID
,      RETEST_DATE
,      AGE
,      ITEM_SIZE
,      COLOR
,      VOLUME
,      VOLUME_UOM
,      PLACE_OF_ORIGIN
,      BEST_BY_DATE
,      LENGTH
,      LENGTH_UOM
,      RECYCLED_CONTENT
,      THICKNESS
,      THICKNESS_UOM
,      WIDTH
,      WIDTH_UOM
,      CURL_WRINKLE_FOLD
,      LOT_ATTRIBUTE_CATEGORY
,      VENDOR_ID
,      TERRITORY_CODE
,      SUBLOT_NUM
,      SECONDARY_QUANTITY
,      SECONDARY_UNIT_OF_MEASURE
,      QC_GRADE
,      REASON_CODE
,      PRODUCT_CODE
,      PRODUCT_TRANSACTION_ID
,      ATTRIBUTE_CATEGORY
,      ATTRIBUTE1
,      ATTRIBUTE2
,      ATTRIBUTE3
,      ATTRIBUTE4
,      ATTRIBUTE5
,      ATTRIBUTE6
,      ATTRIBUTE7
,      ATTRIBUTE8
,      ATTRIBUTE9
,      ATTRIBUTE10
,      ATTRIBUTE11
,      ATTRIBUTE12
,      ATTRIBUTE13
,      ATTRIBUTE14
,      ATTRIBUTE15
,      EXPIRATION_ACTION_CODE
,      EXPIRATION_ACTION_DATE
,      HOLD_DATE
,      ORIGINATION_TYPE
,      PARENT_LOT_NUMBER
,      REASON_ID
,      PARENT_OBJECT_TYPE
,      PARENT_OBJECT_ID
,      PARENT_OBJECT_NUMBER
,      PARENT_OBJECT_TYPE2
,      PARENT_OBJECT_ID2
,      PARENT_OBJECT_NUMBER2
,      PARENT_ITEM_ID
    )
    VALUES
    (l_txn_temp_id
    ,sysdate
    ,l_last_updated_by
    ,sysdate
    ,l_created_by
    ,l_last_update_login
    ,l_request_id
    ,l_program_app_id
    ,l_program_id
    ,sysdate
    ,l_txn_qty
    ,l_txn_qty
    ,l_lot_number
    ,NULL
    ,NULL
    ,NULL
    ,l_txn_header_id
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,sysdate
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,l_status_id
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,3
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL
    ,NULL);


跑完插入的sql指令之后,commit一下。

然后更新stuck mmtt 记录状态:

UPDATE MTL_MATERIAL_TRANSACTIONS_TEMP
SET PROCESS_FLAG = 'Y',
LOCK_FLAG = 'N',
ERROR_CODE = NULL,
ERROR_EXPLANATION = NULL,
TRANSACTION_MODE = 3
WHERE TRANSACTION_TEMP_ID in (23965292);


最后重新launch inventory manager 就可以了。





### Texlive 路径调整后的包特定后置操作 在完成 TeX Live 的路径调整之后,针对某些特定的软件包可能需要执行额外的操作来确保其功能正常运行。这些后置操作通常涉及配置文件更新、缓存重建以及环境变量设置等。 #### 配置文件更新 对于一些依赖于本地化配置的软件包(如 `babel` 或者 `polyglossia`),可能需要手动编辑或重新生成相应的配置文件。例如,在安装新的语言支持包后,应确认语言定义文件已正确加载到系统的搜索路径中[^1]。可以通过以下命令验证并刷新文件数据库: ```bash texhash ``` 此命令会更新 TeX 系统中的文件名数据库,从而使得新增加的语言资源能够被编译器识别。 #### 缓存重建 部分图形处理工具或者字体管理程序(比如 `fontspec` 和 `luaotfload`)可能会维护内部缓存以便加速渲染过程。当安装新字体或者修改现有字体映射关系时,则需清理旧版缓存以防止潜在冲突发生。具体方法如下所示: ```bash luaotfload-tool --update --force ``` 上述脚本专门用于 LuaLaTeX 下 OpenType 字体索引表的重构建工作[^2]。 #### 环境变量设定 如果用户的个人文档树位于非标准目录下(即不在默认 `$TEXMFHOME` 所指向的位置范围内),那么应当相应扩展该变量值范围。假设自定义存储位置为 `/path/to/custom/texmf/` ,则可以将其加入至 shell profile 文件当中去永久生效: ```bash export TEXMFHOME=/path/to/custom/texmf/:$TEXMFHOME ``` 另外还需注意的是,不同操作系统平台间关于分号(`;`)与冒号(`:`)作为路径分割符的区别之处[^3]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值