Commit c1b1819c authored by Boxiang Sun's avatar Boxiang Sun

erp5_user_tutorial: Add user-Howto.Create.Purchase.Transactions

parent 4575c34b
<section class="illustration">
<h1>How to create Invoice Transaction from Scratch</h1>
<img alt="How to create Invoice Transaction from Scratch" src="http://img.erp5.cn/P-OSOE-Invoices.Workflow?format=png" title="How to create Invoice Transaction from Scratch" type="image/svg+xml" />
<footer>by <a href="http://www.osoe-project.org/contact">OSOE Project</a>.</footer>
<details open="open">
<p>This visual guide is part of a collection of documents created by the One Student One ERP (OSOE) project in collaboration with Institut Mines Telecom, Telecom Bretagne, Dresden University of Technology and the South Westfalia University of Applied Sciences. It can be used to teach modern ERP theory and practice to undergraduate students or professionals.</p>
<p>From the tutorials in the session &quot;Packing Lists&quot;, you know that a <strong>Sale Invoice Transaction can be created directly from a Sale Packing List</strong> , as you can see from the above workflow of Invoice, after &quot;Ship Packing List&quot;, a new Invoice will be created in &quot;Confirmed&quot; state, which the method we recommend as everything is automated, and it will be almost impossible to make an error.</p>
<p>But you might need sometimes to <strong>create sale or purchase invoice transactions from scratch</strong> . If so, this tutorial will help you!</p>
<p><b>Copyright</b>: You are free to copy, distribute, display, and perform the work under the following conditions: you must attribute the work in the manner specified by the author or licensor; you may not use this work for any commercial purposes including training, consulting, advertising, self-advertising, publishing, etc.; you may not alter, transform, or build upon this work. For any reuse or distribution, you must make clear to others the license terms of this work. Any of these conditions can be waived if you get permission from the copyright holder through a commercial license or an educational license. For more information, contact info@nexedi.com</p>
</details>
<test>
<table class="test" style="display: none;">
<tbody>
<tr>
<td colspan="3">&lt;span metal:use-macro=&quot;container/Zuite_viewTestMacroLibrary/macros/init_test_environment&quot;&gt;init&lt;/span&gt;</td>
</tr>
<tr style="opacity: 1; z-index: 0;">
<td>openAndWait</td>
<td>${base_url}/Zuite_createFunctionalTestUser</td>
<td>&nbsp;</td>
</tr>
<tr style="opacity: 1; z-index: 0;">
<td>verifyTextPresent</td>
<td>Done.</td>
<td>&nbsp;</td>
</tr>
<tr style="opacity: 1; z-index: 0;">
<td colspan="3">&lt;span metal:use-macro=&quot;container/Zuite_viewTestMacroLibrary/macros/wait_for_activities&quot;&gt; Wait for activities &lt;/span&gt;</td>
</tr>
<tr style="opacity: 1; z-index: 0;">
<td>openAndWait</td>
<td>${base_url}/Zuite_setUpSaleOrderTest</td>
<td>&nbsp;</td>
</tr>
<tr style="opacity: 1; z-index: 0;">
<td>verifyTextPresent</td>
<td>Init Ok</td>
<td>&nbsp;</td>
</tr>
<tr style="opacity: 1; z-index: 0;">
<td colspan="3">&lt;span metal:use-macro=&quot;container/Zuite_viewTestMacroLibrary/macros/wait_for_activities&quot;&gt; Wait for activities &lt;/span&gt;</td>
</tr>
</tbody>
</table>
</test></section>
<section>
<h1>Agenda</h1>
<ul>
<li>How to create a Purchase Invoice Transaction from the Accounting module</li>
<li>How to check the transactions in the Accounting module &quot;Accounting Transactions&quot; list</li>
</ul>
<details open="open">
<p>Please note that this tutorial explains how to create a Purchase Invoice Transaction, but the exact same procedure will help you create a Sale Invoice Transaction, only the first step is different-do not choose to create a Purchase Invoice Transaction, but a Sale Invoice Transaction.</p>
<p><strong>Note: in this session &quot;IFRS Accounting&quot;, we will still use our company Hongzhao as an example. So when you are practicing, please replace Hongzhao with the company you created when you configured your ERP5 instance.</strong></p>
</details>
<test>
<table class="test" style="display: none;">
<tbody>
<tr style="opacity: 1; z-index: 0;">
<td colspan="3">&lt;span metal:use-macro=&quot;container/Zuite_viewTestMacroLibrary/macros/login_as_functional_test_user&quot;&gt;Login As Functional Test User&lt;/span&gt;</td>
</tr>
<tr>
<td colspan="3">&lt;tal:block tal:define=&quot;click_configuration python: {&#39;text&#39;: &#39;New&#39;}&quot;&gt; &lt;tal:block metal:use-macro=&quot;here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_panel_link&quot; /&gt; &lt;/tal:block&gt;</td>
</tr>
<tr>
<td colspan="3">&lt;tal:block metal:use-macro=&quot;here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded&quot;&gt; &lt;/tal:block&gt;</td>
</tr>
</tbody>
</table>
</test></section>
<section class="screenshot">
<h1>New Purchase Invoice Transaction</h1>
<img alt="New Purchase Invoice Transaction" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.New.Accounting.Purchase.Svg?format=png" title="New Purchase Invoice Transaction" type="image/svg+xml" />
<details open="open">
<p>As shown in the above workflow, the first step will be to create a Purchase Invoice Transaction manually. To do so, take this simple step, to which you should be used now: in your ERP5 instance Home Page,&nbsp;<strong>click the New tab</strong>&nbsp;and choose&nbsp;<strong>Purchase Invoice Transaction</strong>&nbsp;under the Accounting module as shown on the picture.</p>
</details>
<test>
<table class="test" style="display: none;">
<tbody>
<tr>
<td>waitForElementPresent</td>
<td>//button[text()=&quot;Purchase Invoice Transaction&quot;]</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>click</td>
<td>//input[@name=&quot;editable&quot;]</td>
<td>&nbsp;</td>
</tr>
<tr>
<td colspan="3">&lt;tal:block metal:use-macro=&quot;here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded&quot;&gt; &lt;/tal:block&gt;</td>
</tr>
<tr>
<td>click</td>
<td>//button[text()=&quot;Purchase Invoice Transaction&quot;]</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//input[@name=&quot;field_my_title&quot;]</td>
<td>&nbsp;</td>
</tr>
</tbody>
</table>
</test></section>
<section class="screenshot">
<h1>Edit Invoice View</h1>
<img alt="Edit Invoice View" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Purchase.Invoice.View.Svg?format=png" title="Edit Invoice View" type="image/svg+xml" />
<details open="open">
<p>After the creation, you will be located firstly in the <strong>Invoice View tab</strong> of this new Purchase Invoice Transaction. Edit this page in detail, such as the information of your company who is the client (circled in blue), the supplier (circled in green), the product to purchase (circled in yellow). You can also enter a description in the Description field, which will be displayed on the Invoice for your company if you print it.</p>
<p>Then, what you should keep in mind to fill in, is a very important information-the <strong>Purchase Trade Condition</strong> (circled in black). The idea is that <strong>instead of filling all the remaining tabs of this invoice (Payment, Trade Model, etc.), you can import this information from a Purchase Trade Condition</strong> . If you haven&#39;t created this type of document before, we would recommend to read the tutorial <a href="user-Howto.Create.Trade.Conditions/view">&quot;How to create Trade Conditions&quot;</a> before taking the following steps. <strong>ATTENTION: You must create a purchase trade condition instead of a sale trade consition</strong> . So even, if you already did the tutorial, you still have to create a new purchase trade condition.</p>
<strong>Type the name of your Purchase Trade Condition in the field or click on the little wheel icon next to the Purchase Trade Condition field and pick your Purchase Trade Condition from the displayed list</strong>. In our case, as you see in the screenshot, we use &quot;VAT France Purchase Trade Condition&quot;.
<p>&nbsp;</p>
<p>When you are done, save the changes and jump to next page.</p>
</details>
<test>
<table class="test" style="display: none;">
<tbody>
<tr>
<td>select</td>
<td>//select[@name=&quot;field_my_destination_section&quot;]</td>
<td>ZUITE-TEST-SALEORDER-ORGANISATION-001</td>
</tr>
<tr>
<td>type</td>
<td>//input[@name=&quot;field_my_title&quot;]</td>
<td>ZUITE-TEST-PURCHASE-INVOICE-TRANSACTION-001</td>
</tr>
<tr style="opacity: 1;">
<td>type</td>
<td>//input[@name=&quot;field_my_source_section_title&quot;]</td>
<td>ZUITE-TEST-SALEORDER-ORGANISATION-002</td>
</tr>
<tr>
<td>fireEvent</td>
<td>//input[@name=&quot;field_my_source_section_title&quot;]</td>
<td>input</td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//ul[@class=&quot;search_ul&quot;]//li</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>click</td>
<td>//ul[@class=&quot;search_ul&quot;]//li[1]</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>type</td>
<td>//input[@name=&quot;field_my_reference&quot;]</td>
<td>ZUITE-TEST-PURCHASE-INVOICE-TRANSACTIOn-001</td>
</tr>
<tr>
<td>type</td>
<td>//input[@name=&quot;field_my_specialise_title&quot;]</td>
<td>General Purchase Trade Condition</td>
</tr>
<tr>
<td>fireEvent</td>
<td>//input[@name=&quot;field_my_specialise_title&quot;]</td>
<td>input</td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//ul[@class=&quot;search_ul&quot;]//li</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>click</td>
<td>//ul[@class=&quot;search_ul&quot;]//li[1]</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>type</td>
<td>//input[@name=&quot;field_my_stop_date&quot;]</td>
<td>04-05-2021</td>
</tr>
<tr>
<td>select</td>
<td>//select[@name=&quot;field_my_price_currency&quot;]</td>
<td>EUR</td>
</tr>
<tr>
<td>select</td>
<td>//select[@name=&quot;field_my_delivery_mode&quot;]</td>
<td>By Air</td>
</tr>
<tr>
<td colspan="3">&lt;tal:block metal:use-macro=&quot;here/Zuite_CommonTemplateForRenderjsUi/macros/save&quot;&gt; &lt;tal:block metal:use-macro=&quot;here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded&quot;&gt; &lt;/tal:block&gt; &lt;/tal:block&gt;</td>
</tr>
</tbody>
</table>
</test></section>
<section class="screenshot">
<h1>Apply Purchase Trade Condition</h1>
<img alt="Apply Purchase Trade Condition" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Apply.Purchase.Trade.Condition.Svg?format=png" title="Apply Purchase Trade Condition" type="image/svg+xml" />
<details open="open">
<p>Once you selected your Purchase Trade Condition, it is time to apply. In order to apply the Purchase Trade Condition, <strong>open the Action Item List</strong> and choose <strong>Apply Purchase Trade Condition</strong> .</p>
</details>
<test>
<table class="test" style="display: none;">
<tbody>
<tr>
<td colspan="3">&lt;tal:block tal:define=&quot;click_configuration python: {&#39;text&#39;: &#39;Apply Purchase Trade Condition&#39;}&quot;&gt; &lt;tal:block metal:use-macro=&quot;here/Zuite_CommonTemplateForRenderjsUi/macros/click_on_panel_link&quot;&gt; &lt;/tal:block&gt; &lt;/tal:block&gt;</td>
</tr>
<tr>
<td colspan="3">&lt;tal:block metal:use-macro=&quot;here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded&quot;&gt; &lt;/tal:block&gt;</td>
</tr>
</tbody>
</table>
</test></section>
<section class="screenshot">
<h1>Add an Invoice Line</h1>
<img alt="Add an Invoice Line" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Purchase.Add.Invoice.Line.Svg?format=png" title="Add an Invoice Line" type="image/svg+xml" />
<details open="open">
<p>You can now see that <strong>some information have been imported from the Purchase Trade Condition you just applied</strong> , such as the Currency. You can also browse the Payment, Trade Model tabs, that should also have been updated from your Purchase Trade Condition document. But you can still modify the details if needed.</p>
<p><img alt="Add an Invoice Line 1" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Purchase.Add.Invoice.Line.1.Svg?format=png" title="Add an Invoice Line" type="image/svg+xml" /></p>
<p>As shown in the Invoices workflow, when you create the invoice manually, you will need to add invoice lines, which will present the products or services to the Purchase Invoice Transaction. Indeed, <strong>in order for ERP5 to calculate the amount of the transaction, it has to be linked with a product or a service</strong> . In order to do this, we will <strong>create an Invoice Line that will bear the Product/Service you purchase</strong> . In order to create an Invoice Line, <strong>open the Action item list</strong> and <strong>choose Add Invoice Line</strong> .</p>
<p>After you are done the checking and adding the Invoice Line, jump to next page in order to edit this line.</p>
</details>
<test>
<table class="test" style="display: none;">
<tbody>
<tr>
<td>waitForElementPresent</td>
<td>//a[text()=&quot;Add&quot;]</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>click</td>
<td>//a[text()=&quot;Add&quot;]</td>
<td>&nbsp;</td>
</tr>
<tr>
<td colspan="3">&lt;tal:block metal:use-macro=&quot;here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded&quot;&gt; &lt;/tal:block&gt;</td>
</tr>
<tr>
<td>waitForElementPresent</td>
<td>//select[@name=&quot;field_your_select_action&quot;]</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>select</td>
<td>//select[@name=&quot;field_your_select_action&quot;]</td>
<td>Invoice Line</td>
</tr>
<tr>
<td colspan="3">&lt;tal:block metal:use-macro=&quot;here/Zuite_CommonTemplateForRenderjsUi/macros/submit_dialog&quot;&gt; &lt;/tal:block&gt;</td>
</tr>
<tr>
<td colspan="3">&lt;tal:block metal:use-macro=&quot;here/Zuite_CommonTemplateForRenderjsUi/macros/wait_for_content_loaded&quot;&gt; &lt;/tal:block&gt;</td>
</tr>
</tbody>
</table>
</test></section>
<section class="screenshot">
<h1>Edit Invoice Line</h1>
<img alt="Edit Invoice Line" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Purchase.Edit.Invoice.Line.Svg?format=png" title="Edit Invoice Line" type="image/svg+xml" />
<details open="open">
<p>A new Invoice Line has been created. On this line, you will be able to link a product to your Purchase Invoice Transaction, that will help ERP5 to calculate the total amount of the Transaction.</p>
<p>Except for the Title and Reference, <strong>the first step we recommend to take is to link a product to the new Invoice Line</strong> . Indeed, the reason of taking this step first is that the information borne on the product document such as the price will be imported automatically to the Invoice Line (If the product has not variations). In order to link a product, <strong>enter the name of the product/service you want to link in the Product field, or click on the wheel Icon</strong> next to the product field and choose the product or service from the displayed list.</p>
<p>After you save the change in the &quot;Product or Service&quot; field, as you can see in the next screenshot, <strong>some information will be updated as soon as your product is linked to the Invoice Line</strong> . Indeed, these information has been imported from the product document such as the <strong>Base Contribution</strong> which is now set as Taxable, and the <strong>Price (If the product has not variations). If the product linked has variation in prices, the Price field will not be updated automatically, because ERP5 will not choose a price between different prices, but we can set the price later</strong> .</p>
</details>
<details open="open">
<p>In our case, as we link a complex product with variations, you can see also the <strong>Variation filed</strong> has been updated (as shown in the next screenshot). Jump to next page in order to understand how to set the price and quantity of variations.</p>
<p>If your product has no variation, you will see the price is updated automatically according to the purchase price set in the product document. So the only step to take after this, is to enter in this View page the quantity you purchase in the <strong>Quantity field</strong> . When this is done, click the <strong>Save</strong> button, and you will see the <strong>&quot;Total Price&quot; be calculated by ERP5</strong> .</p>
<p>This procedure to define the <strong>Quantity</strong> is a security procedure to be sure that the price will be calculated depending upon the ordered quantity, because if you have read the tutorial <a href="user-Howto.Create.and.Manage.Products/view">&quot;How to create Products&quot;</a>, you know that the <strong>purchase/sale price of some products could depend upon the ordered quantity</strong> .</p>
<p>If your product has no Product Individual Variation, you are done with the Invoice Line after you set the quantity, you can jump directly to the page <strong>&quot;Purchase Invoice Transaction&quot;</strong> .</p>
</details>
</section>
<section class="screenshot">
<h1>Choose variation for complex product</h1>
<img alt="Choose variation" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Purchase.Choose.Variation.Svg?format=png" title="Choose variation" type="image/svg+xml" />
<details open="open">
<p>If you linked a product that has individual variations, you have to tell to ERP5 which variations you want to link to this Invoice Line. To do so, <strong>choose the Product Individual Variation shown in the Variation field</strong> which you want to link to this Invoice Line, as shown in red on the screenshot. You should also verify and edit the remaining information, such as Shipping and Delivery Dates, etc.</p>
<p>Don&#39;t forget to <strong>click the Save button</strong> and then jump to next page.</p>
</details>
</section>
<section class="screenshot">
<h1>The variation tabs</h1>
<img alt="The variation tabs" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Purchase.Variation.Tabs.Svg?format=png" title="The variation tabs" type="image/svg+xml" />
<details open="open">
<p>As you can see in the case of product Variations, two new tabs have been created for you to select the <strong>Quantity and the Price</strong> . These tabs will only be created if you want to link a product with Product Individual Variations. <strong>Click on the Quantity tab and jump to next page</strong> .</p>
</details>
</section>
<section class="screenshot">
<h1>Set Quantity</h1>
<img alt="Set Quantity" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Purchase.Variation.Quantity.Svg?format=png" title="Set Quantity" type="image/svg+xml" />
<details open="open">
<p>As you can see, this Quantity tab displays the Product Individual Variation you have selected in last step, in order for you to enter a quantity for it. When you would have set the quantity and saved your work, the price will be calculated automatically, depending upon the quantity steps you defined, if you did define it in the product document. If not, it will take the unique Purchase Price you set in your product for this variation.</p>
<p><strong>Type the Quantity you want to purchase in the quantity field, and click the Save button</strong> . Jump to next page.</p>
</details>
</section>
<section class="screenshot">
<h1>Check Price</h1>
<img alt="Check Price" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Purchase.Variation.Price.Svg?format=png" title="Check Price" type="image/svg+xml" />
<details open="open">
<p><strong>After set the Quantity, ERP5 will calculate the Price automatically</strong> . To check the updated Price, <strong>click on the Price tab</strong> , you will see that the price of the product variation, the Total Price and the Quantity has been updated from the Quantity you set in last step.</p>
<p>Now you have finished setting the price and quantity of variations. You can go back to your Purchase Invoice Transaction document. To do so, click on the name of your Purchase Invoice Transaction on the Bread Crumb circled in blue on the screenshot. Note that the last part of the Bread Crumb is the Invoice Line document where you are located now, don&#39;t mix up with the part of the Purchase Invoice Transaction.</p>
</details>
</section>
<section class="screenshot">
<h1>Invoice Line added</h1>
<img alt="Invoice Line added" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Purchase.Invoice.Line.Added.Svg?format=png" title="Invoice Line added" type="image/svg+xml" />
<details open="open">
<p>Now we are back to the <strong>Invoice View tab</strong> of the Purchase Invoice Transaction we created manually. You will see now in the <strong>Invoice Lines list</strong> the line of the product we just added into this invoice.</p>
</details>
</section>
<section class="screenshot">
<h1>Accounting View</h1>
<img alt="Accounting View" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Purchase.Accounting.View.Svg?format=png" title="Accounting View" type="image/svg+xml" />
<details open="open">
<p>After editing the Invoice View tab, we will now check the Accounting View tab, where some information have been updated according to your inputs in Invoice View tab. <strong>Click on the Accounting View tab of this Purchase Invoice Transaction</strong> , you will see the updated information, such as Section, Title, Supplier, Invoice Number, Accounting Operation Date, etc.</p>
<p>You will find that there are already some <strong>Accounting Transaction Lines</strong> created automatically when you create this Purchase Invoice Transaction. But <strong>they are empty now because you haven&#39;t Journalise the transaction</strong> .</p>
<p>If you have read the previous tutorial <a href="user-Howto.Manage.Invoices/view">&quot;How to manage Invoices&quot;</a>, you will know the accounting transaction operation includes &quot;Journalise Transaction&quot;, &quot;Post Transaction To General Ledger&quot; and &quot;Definitively Close Accounting Transaction&quot;. But <strong>before Journalise the transaction, we still have to Confirm the transaction</strong> . Please jump to next page.</p>
</details>
</section>
<section class="screenshot">
<h1>Confirm Transaction</h1>
<img alt="Confirm Transaction" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Purchase.Confirm.Transaction.Svg?format=png" title="Confirm Transaction" type="image/svg+xml" />
<details open="open">
<p>You are now used to workflows, so you should know that the workflows are available for each object without exceptions and can be found in the Action item list.</p>
<p>As shown in the workflow of Invoices, after the creation of invoice, the next step will be to <strong>Plan Transaction</strong> , but you can also <strong>Confirm Transaction directly, if you want it to be taken into account, or if you want to be able to start the accounting operation</strong> . Note that this step should be taken by the company manager, and aims at saying to the accounting department that the transaction is confirmed and that the Purchase will be efficient.</p>
<p>In order to confirm this Purchase Invoice Transaction, <strong>open the Action item list and choose Confirm Transaction</strong> .</p>
<p>Then you can <strong>start the accounting transaction operation by acting Journalise Transaction</strong> . Please jump to next page.</p>
</details>
<test>
<table class="test" style="display: none;">
<tbody>
</tbody>
</table>
</test></section>
<section class="screenshot">
<h1>Journalise Transaction</h1>
<img alt="Journalise Transaction" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Purchase.Journalise.Transaction.Svg?format=png" title="Journalise Transaction" type="image/svg+xml" />
<details open="open">
<p>As you have learned in the previous tutorial <a href="user-Howto.Manage.Invoices/view">&quot;How to manage Invoices&quot;</a>, and as shown in the workflow of Invoices, after the Invoice is confirmed, you will need to act Journalise Transaction to create the Accounting Transaction Lines. But in this tutorial, since this Purchase Invoice Transaction is created by scratch instead of created automatically from the Packing List, the Accounting Transaction Lines are already created when the invoice is created. So here, the action &quot;Journalise Transaction&quot; is to update the amount of the purchase transaction of the product linked to this invoice into the Accounting Transaction Lines, which include the calculation considering the Trade Model (tax, discount) set in the Purchase Trade Condition.</p>
<p>In order to journalise a purchase invoice transaction, <strong>open the Action Item List and click on Journalise Transaction</strong> .</p>
</details>
</section>
<section class="screenshot">
<h1>Check Accounting Transaction Lines</h1>
<img alt="Check Accounting Transaction Lines" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Purchase.Check.Edit.Accounting.Transaction.Lines.Svg?format=png" title="Check Accounting Transaction Lines" type="image/svg+xml" />
<details open="open">
<p>After journalised transaction, check the updating of three lines. The first for Purchases Account, the second for the VAT (if it is set in the Purchase Trade Condition you applied to this purchase invoice), and the last for the Suppliers Account.</p>
<p>Note that you might need to modify the amounts (directly in the fields circled in yellow), &quot;Add Accounting Transaction Lines&quot; (from the Action list circled in green), or delete some transaction lines (by entering the &quot;Accounting Transaction Lines list &quot; circled in blue), according to each particular transaction.</p>
</details>
</section>
<section class="screenshot">
<h1>Create Related Payment</h1>
<img alt="Create Related Payment" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Purchase.Create.Related.Payment.Svg?format=png" title="Create Related Payment" type="image/svg+xml" />
<details open="open">
<p>In order to create the related treasury movements, you will have to create the related payment transaction. In order to do so, we would recommend you to read the tutorial <a href="user-Howto.Create.A.Payment/view">&quot;How to create a Payment&quot;</a> first, to have a general ideal why and how should we do this step. Then you can <strong>choose &quot;Create Related Payment&quot; from the Action item list</strong> .</p>
</details>
</section>
<section class="screenshot">
<h1>Go to Accounting Module</h1>
<img alt="Go to Accounting Module" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Purchase.Go.To.Accounting.Module.Svg?format=png" title="Go to Accounting Module" type="image/svg+xml" />
<details open="open">
<p>Once the related payment has been created, you can go back to the the Accounting module and check the invoice and payment created by you. To do so, <strong>open the Module item list on top of the page and click on Accounting</strong> .</p>
</details>
</section>
<section class="screenshot">
<h1>Check invoice and payment transactions in the Accounting Transactions List</h1>
<img alt="Check invoice and payment transactions" src="http://img.erp5.cn/user-Howto.Create.Invoice.Transaction.From.Scratch.Purchase.Check.Accounting.Transactions.List.Svg?format=png" title="Check invoice and payment transactions" type="image/svg+xml" />
<details open="open">
<p>The <strong>Accounting module displays all the transactions that you have entered in your ERP5</strong> . As you can see on the screenshot, you can find in this list the two accounting transactions that we have created in this tutorial.</p>
</details>
<test>
<table class="test" style="display: none;">
<tbody>
<tr style="opacity: 1;">
<td colspan="3">&lt;span metal:use-macro=&quot;container/Zuite_viewTestMacroLibrary/macros/wait_for_activities&quot;&gt; Wait for activities &lt;/span&gt;</td>
</tr>
<tr style="opacity: 1;">
<td colspan="3">&lt;span metal:use-macro=&quot;container/Zuite_viewTestMacroLibrary/macros/login_as_manager&quot;&gt;Login As Manager&lt;/span&gt;</td>
</tr>
<tr>
<td>open</td>
<td>${base_url}/Zuite_tearDownSaleOrderTest</td>
<td>&nbsp;</td>
</tr>
<tr>
<td>verifyTextPresent</td>
<td>Clean Ok</td>
<td>&nbsp;</td>
</tr>
<tr style="opacity: 1; z-index: 0;">
<td colspan="3">&lt;span metal:use-macro=&quot;container/Zuite_viewTestMacroLibrary/macros/wait_for_activities&quot;&gt; Wait for activities &lt;/span&gt;</td>
</tr>
</tbody>
</table>
</test></section>
<?xml version="1.0"?>
<ZopeData>
<record id="1" aka="AAAAAAAAAAE=">
<pickle>
<global name="Test Page" module="erp5.portal_type"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_Access_contents_information_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Add_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Change_local_roles_Permission</string> </key>
<value>
<tuple>
<string>Assignor</string>
<string>Manager</string>
</tuple>
</value>
</item>
<item>
<key> <string>_Modify_portal_content_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>_View_Permission</string> </key>
<value>
<tuple>
<string>Assignee</string>
<string>Assignor</string>
<string>Manager</string>
<string>Owner</string>
</tuple>
</value>
</item>
<item>
<key> <string>categories</string> </key>
<value>
<tuple>
<string>follow_up/product_module/148</string>
<string>group/nexedi</string>
<string>classification/collaborative/team</string>
<string>publication_section/marketing</string>
<string>publication_section/marketing/osoe</string>
<string>publication_section/documentation/user</string>
<string>publication_section/documentation</string>
<string>publication_section/tutorial</string>
<string>publication_section/marketing/osoe</string>
<string>contributor/person_module/590</string>
<string>contributor/person_module/2326</string>
<string>contributor/person_module/20111027-2BE16E4</string>
<string>contributor/person_module/20121115-586BC0F</string>
<string>contributor/person_module/20130927-61A66CC</string>
<string>contributor/person_module/20160111-383FB92</string>
</tuple>
</value>
</item>
<item>
<key> <string>content_md5</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>content_type</string> </key>
<value> <string>text/html</string> </value>
</item>
<item>
<key> <string>default_reference</string> </key>
<value> <string>user-Howto.Create.Purchase.Transactions</string> </value>
</item>
<item>
<key> <string>description</string> </key>
<value> <string>In this guide, you will learn how to create Sales or Purchase Invoice Transaction from scratch.</string> </value>
</item>
<item>
<key> <string>effective_date</string> </key>
<value>
<object>
<klass>
<global name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1355443200.0</float>
<string>GMT</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key> <string>id</string> </key>
<value> <string>user-Howto.Create.Purchase.Transactions</string> </value>
</item>
<item>
<key> <string>language</string> </key>
<value> <string>en</string> </value>
</item>
<item>
<key> <string>portal_type</string> </key>
<value> <string>Test Page</string> </value>
</item>
<item>
<key> <string>short_title</string> </key>
<value> <string>How to create Invoice Transaction from Scratch</string> </value>
</item>
<item>
<key> <string>title</string> </key>
<value> <string>How to create Invoice Transaction from Scratch</string> </value>
</item>
<item>
<key> <string>version</string> </key>
<value> <string>005</string> </value>
</item>
<item>
<key> <string>workflow_history</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAI=</string> </persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="2" aka="AAAAAAAAAAI=">
<pickle>
<global name="PersistentMapping" module="Persistence.mapping"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>data</string> </key>
<value>
<dictionary>
<item>
<key> <string>edit_workflow</string> </key>
<value>
<persistent> <string encoding="base64">AAAAAAAAAAM=</string> </persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record id="3" aka="AAAAAAAAAAM=">
<pickle>
<global name="WorkflowHistoryList" module="Products.ERP5Type.Workflow"/>
</pickle>
<pickle>
<dictionary>
<item>
<key> <string>_log</string> </key>
<value>
<list>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>edit</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>990.46685.5322.5410</string> </value>
</item>
<item>
<key> <string>state</string> </key>
<value> <string>current</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass>
<global id="3.1" name="DateTime" module="DateTime.DateTime"/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1616639646.5</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>edit</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>990.60634.7105.14899</string> </value>
</item>
<item>
<key> <string>state</string> </key>
<value> <string>current</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass> <reference id="3.1"/> </klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1616640347.61</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>edit</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>990.60645.52006.26060</string> </value>
</item>
<item>
<key> <string>state</string> </key>
<value> <string>current</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass> <reference id="3.1"/> </klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1616640403.38</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>edit</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>990.60646.47383.43793</string> </value>
</item>
<item>
<key> <string>state</string> </key>
<value> <string>current</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass> <reference id="3.1"/> </klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1616642060.36</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>edit</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>990.60674.22243.42683</string> </value>
</item>
<item>
<key> <string>state</string> </key>
<value> <string>current</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass> <reference id="3.1"/> </klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1616642434.22</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>edit</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>990.60680.37380.2935</string> </value>
</item>
<item>
<key> <string>state</string> </key>
<value> <string>current</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass> <reference id="3.1"/> </klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1616642730.44</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
<dictionary>
<item>
<key> <string>action</string> </key>
<value> <string>edit</string> </value>
</item>
<item>
<key> <string>actor</string> </key>
<value> <string>zope</string> </value>
</item>
<item>
<key> <string>comment</string> </key>
<value>
<none/>
</value>
</item>
<item>
<key> <string>error_message</string> </key>
<value> <string></string> </value>
</item>
<item>
<key> <string>serial</string> </key>
<value> <string>990.60685.33254.62037</string> </value>
</item>
<item>
<key> <string>state</string> </key>
<value> <string>current</string> </value>
</item>
<item>
<key> <string>time</string> </key>
<value>
<object>
<klass> <reference id="3.1"/> </klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>1616642834.09</float>
<string>UTC</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</value>
</item>
</dictionary>
</pickle>
</record>
</ZopeData>
...@@ -25,3 +25,5 @@ test_page_module/user-Howto.Manage.Support.Request.NewUI ...@@ -25,3 +25,5 @@ test_page_module/user-Howto.Manage.Support.Request.NewUI
test_page_module/user-Howto.Manage.Support.Request.NewUI/** test_page_module/user-Howto.Manage.Support.Request.NewUI/**
test_page_module/user-Howto.Manage.Document.Versionning.Test test_page_module/user-Howto.Manage.Document.Versionning.Test
test_page_module/user-Howto.Manage.Document.Versionning.Test/** test_page_module/user-Howto.Manage.Document.Versionning.Test/**
test_page_module/user-Howto.Create.Purchase.Transactions
test_page_module/user-Howto.Create.Purchase.Transactions/**
...@@ -9,6 +9,8 @@ test_page_module/user-Howto.Create.Outgoing.Events ...@@ -9,6 +9,8 @@ test_page_module/user-Howto.Create.Outgoing.Events
test_page_module/user-Howto.Create.Outgoing.Events/** test_page_module/user-Howto.Create.Outgoing.Events/**
test_page_module/user-Howto.Create.Persons test_page_module/user-Howto.Create.Persons
test_page_module/user-Howto.Create.Persons/** test_page_module/user-Howto.Create.Persons/**
test_page_module/user-Howto.Create.Purchase.Transactions
test_page_module/user-Howto.Create.Purchase.Transactions/**
test_page_module/user-Howto.Create.Sale.Orders.005.en test_page_module/user-Howto.Create.Sale.Orders.005.en
test_page_module/user-Howto.Create.Trade.Conditions.008.en test_page_module/user-Howto.Create.Trade.Conditions.008.en
test_page_module/user-Howto.Create.Trade.Conditions.008.en/** test_page_module/user-Howto.Create.Trade.Conditions.008.en/**
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment