# Optimizing bulk line entry for Purchase Requisitions

**URL:** https://discuss.tryton.org/t/optimizing-bulk-line-entry-for-purchase-requisitions/9280
**Category:** User
**Tags:** purchasing
**Created:** [July 8, 2026, 10:40am UTC](https://discuss.tryton.org/t/optimizing-bulk-line-entry-for-purchase-requisitions/9280 "2026-07-08T10:40:43Z")
**Posts on this page:** 10
**Page:** 1

<div class="post-metadata">

### Author: ![a\_afzal](https://discuss-cdn.tryton.org/letter_avatar_proxy/v4/letter/a/8797f3/32.png) [@a\_afzal](https://discuss.tryton.org/u/a_afzal)
#### Post date: [July 8, 2026, 10:40am UTC](https://discuss.tryton.org/t/optimizing-bulk-line-entry-for-purchase-requisitions/9280/1 "2026-07-08T10:40:43Z")

</div>

I’m working on purchase\_requisition module. Currently, users must add items one by one, selecting the product, entering the quantity, and saving before moving to the next line. When a requisition contains dozens of items, this results in a high number of clicks and a slower workflow.

I want to make purchase lines entry faster, user should be able to select multiple product in bulk and then supplier should be selected once for the products sharing the same supplier.

Is there an existing, standard Tryton pattern or module (perhaps using a specific widget or wizard type) designed for fast, matrix-style data entry?

---

<div class="post-metadata">

### Author: ![ced](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/ced/32/1237_2.png) [@ced](https://discuss.tryton.org/u/ced)
#### Post date: [July 8, 2026, 12:26pm UTC](https://discuss.tryton.org/t/optimizing-bulk-line-entry-for-purchase-requisitions/9280/2 "2026-07-08T12:26:13Z")

</div>

> [@a\_afzal](#):
>
> I want to make purchase lines entry faster, user should be able to select multiple product in bulk

Then it will be missing the quantity.

> [@a\_afzal](#):
>
> then supplier should be selected once for the products sharing the same supplier.

I do not understand this.

Indeed I’m wondering what is your use case of purchase requisition?

---

<div class="post-metadata">

### Author: ![a\_afzal](https://discuss-cdn.tryton.org/letter_avatar_proxy/v4/letter/a/8797f3/32.png) [@a\_afzal](https://discuss.tryton.org/u/a_afzal)
#### Post date: [July 8, 2026, 12:38pm UTC](https://discuss.tryton.org/t/optimizing-bulk-line-entry-for-purchase-requisitions/9280/3 "2026-07-08T12:38:01Z")

</div>

When we are creating the purchase order from purchase requests, it asks for the supplier one by one. I don’t need that UX. For the product sharing same vendor there should be an option to select them all and select the vendor for all of them only once.

---

<div class="post-metadata">

### Author: ![ced](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/ced/32/1237_2.png) [@ced](https://discuss.tryton.org/u/ced)
#### Post date: [July 8, 2026, 12:51pm UTC](https://discuss.tryton.org/t/optimizing-bulk-line-entry-for-purchase-requisitions/9280/4 "2026-07-08T12:51:28Z")

</div>

> [@a\_afzal](#):
>
> When we are creating the purchase order from purchase requests

So it is not about purchase requisition.  
It is important to use the proper term otherwise we will not be able to understand each other.

> [@a\_afzal](#):
>
> it asks for the supplier one by one

This is because a supplier has not been defined on the product form.  
It is better to setup the proper supplier once on the product form than set it each time you have a purchase request.

---

<div class="post-metadata">

### Author: ![a\_afzal](https://discuss-cdn.tryton.org/letter_avatar_proxy/v4/letter/a/8797f3/32.png) [@a\_afzal](https://discuss.tryton.org/u/a_afzal)
#### Post date: [July 8, 2026, 12:51pm UTC](https://discuss.tryton.org/t/optimizing-bulk-line-entry-for-purchase-requisitions/9280/5 "2026-07-08T12:51:53Z")

</div>

> [@ced](#):
>
> Then it will be missing the quantity.

So, what is causing problem for me is that, I have to search from a long list of products again and again. I want to search them all once, and then quantities of items can be set in the later step.

---

<div class="post-metadata">

### Author: ![oscarQ](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/oscarq/32/413_2.png) [@oscarQ](https://discuss.tryton.org/u/oscarQ)
#### Post date: [July 8, 2026, 1:14pm UTC](https://discuss.tryton.org/t/optimizing-bulk-line-entry-for-purchase-requisitions/9280/6 "2026-07-08T13:14:12Z")

</div>

There is no standard. But there are two things you can do without touching the core:

Make the requisition lines tree view editable (`editable="bottom"` on the tree view). You stay in the list: type the product code or name, Tab, quantity, Enter, next line. No dialog per line. This alone removes most of the clicks.

If you really want “select many products at once, quantities later”: a small custom wizard with a Many2Many to `product.product` does it. The search dialog already supports multi-selection, so you search once, pick all products, and the wizard creates one requisition line per product. Then you fill the quantities in the editable list.

For the supplier part, as @ced said: define product suppliers on the product form. The create purchase wizard then groups requests per supplier and never asks.

---

<div class="post-metadata">

### Author: ![a\_afzal](https://discuss-cdn.tryton.org/letter_avatar_proxy/v4/letter/a/8797f3/32.png) [@a\_afzal](https://discuss.tryton.org/u/a_afzal)
#### Post date: [July 8, 2026, 2:45pm UTC](https://discuss.tryton.org/t/optimizing-bulk-line-entry-for-purchase-requisitions/9280/7 "2026-07-08T14:45:48Z")

</div>

Have you implemented this before?

If yes, then kindly provide the code snippets for the customization.

I actually tried with the tree view but somehow my code didn’t work.

---

<div class="post-metadata">

### Author: ![oscarQ](https://discuss-cdn.tryton.org/user_avatar/discuss.tryton.org/oscarq/32/413_2.png) [@oscarQ](https://discuss.tryton.org/u/oscarQ)
#### Post date: [July 9, 2026, 5:30am UTC](https://discuss.tryton.org/t/optimizing-bulk-line-entry-for-purchase-requisitions/9280/8 "2026-07-09T05:30:57Z")

</div>

In my previous message I wrote `editable="bottom"`, but that syntax is from old series. Since 5.6 the attribute is a boolean, so on current series it must be `editable="1"`. That alone may be why your code did not work.

The code should look like this:

`purchase.xml`:

xml

```xml
<?xml version="1.0"?>
<tryton>
    <data>
        <record model="ir.ui.view" id="requisition_line_view_list_sequence">
            <field name="model">purchase.requisition.line</field>
            <field name="inherit"
                ref="purchase_requisition.purchase_requisition_line_view_list_sequence"/>
            <field name="name">purchase_requisition_line_view_list_sequence</field>
        </record>
    </data>
</tryton>

```

`view/`purchase\_requisition\_line\_view\_list\_sequence`.xml`:

xml

```xml
<?xml version="1.0"?>
<data>
    <xpath expr="/tree" position="replace_attributes">
        <tree editable="1"/>
    </xpath>
</data>

```

If it still does not work, please share your code and the exact error or behavior, otherwise it is hard to help.

---

<div class="post-metadata">

### Author: ![a\_afzal](https://discuss-cdn.tryton.org/letter_avatar_proxy/v4/letter/a/8797f3/32.png) [@a\_afzal](https://discuss.tryton.org/u/a_afzal)
#### Post date: [July 12, 2026, 3:56pm UTC](https://discuss.tryton.org/t/optimizing-bulk-line-entry-for-purchase-requisitions/9280/9 "2026-07-12T15:56:30Z")

</div>

> [@oscarQ](#):
>
> If it still does not work, please share your code and the exact error or behavior, otherwise it is hard to help.

Hey, thanks. My code worked and I have achieved the desired list/grid view.

---

<div class="post-metadata">

### Author: ![system](https://discuss-cdn.tryton.org/uploads/default/original/1X/c6f8ec0a40525cdcd50058c734283450a4b3d38b.png) [@system](https://discuss.tryton.org/u/system)
#### Post date: [July 13, 2026, 3:57pm UTC](https://discuss.tryton.org/t/optimizing-bulk-line-entry-for-purchase-requisitions/9280/10 "2026-07-13T15:57:25Z")

</div>

This topic was automatically closed 24 hours after the last reply. New replies are no longer allowed.
