Axapta3.0 inventory check

Source: Internet
Author: User
The inventory check in axapta3.0 has the following three problems:
1. in the same counting Journal, if you have different location, pallet, or configurations for the same item (in short, it is better to make a item appear twice or more in one journal ), check. After the Bill is posted, the check status of the item is always started (it should not be started after the bill is posted. you can use inventory management-> item-> setup-> warehouse items-> JOURNAL-> counting started ).
2. When you create an inventory check row through on-hand, the row with zero inventory in the current inventory dimension group will also be added to the inventory check row, which is inconvenient.
3. in most cases, the quantity after check should be the same as the current inventory. If there are too many check rows, you may not want to input each row, instead, we want to set the inventory quantity to the current inventory by default.
1 and 2 of the above three problems have been fixed in 4.0. It is unclear why the first problem will be fixed only after 4.0. How did previously axapta users use the inventory check function?
Couting started corresponds to the countingstarted field of the physical table whose status is changed to the updatestopcountingjournal method of the inventitemlocation table. Code As follows:   If (Effectitemlocation && Specified titemlocation. countingstarted && Specified titemlocation. countingjournalid = Inventjournaltrans. journalid)
{
While Select othertrans
Where othertrans. journalid = Inventjournaltrans. journalid &&
Othertrans. Itemid = Inventjournaltrans. Itemid &&
Othertrans. recid ! = Inventjournaltrans. recid
{
Otherinventitemlocation = Required titemlocation: Find (inventjournaltrans. Itemid, othertrans. inventdimid );
If (Other1_titemlocation. recid = Specified titemlocation. recid)
{
Dostop= False;
Break;
}
}

If (Dostop)
{
Specified titemlocation. countingstarted=Noyes: No;
Specified titemlocation. countingjournalid= '';
Specified titemlocation. Update ();
}
}

The while Code indicates that the coder may want to implement this function: if the current Journal has checked the same item for multiple times, when updating the previous inventjournaltrans record, the countingstarted of the specified titemlocation should not be updated, because there are still inventory records to be updated, the countingstarted field is updated when the last check record of this item is updated. however, this code will never update the value of the coutingstarted field, and you will never know which record is the last one. The legendary bug ......
The solution I came up with was to comment out this piece of code, but it worked quite well. Later I checked 4.0 of the code and used a similar method, only a Boolean parameter is added, and the code is blocked. However, this code can be reused in the future, but I cannot think of any other way to use this code ......

The second problem is that it is not inserted into the inventjournaltrans table when it is created. I used to directly judge in the createinventjournaltrans method of inventcountcreate_base. If the current inventory is zero, return directly. axapta4.0 adds a parameter control for users to choose whether to include zero rows, which is more rigorous and convenient than the modified one.
For the third question, some people may think that the check value should be input in a row in the inventory check, but some customers do not want to input so much data, you only want to enter the number of disk points that are different from the current inventory. this modification is also simple. It is also the same method of problem 2 modification. You can assign the current inventory quantity to the quantity after the inventory check.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.