- ỨNG DỤNG
- Kế toán doanh thu & chi phí theo tuyến đường 17.0
| Số dòng Code | 652 |
| Tên kỹ thuật | to_geo_routes_account |
| Giấy phép | OPL-1 |
| Website | https://viindoo.com/apps/modules/17.0/to_geo_routes_account |
| Đọc mô tả cho | v 18.0 |
| Yêu cầu các App | Invoicing (account) Discuss (mail) |
| Bao gồm Các phụ thuộc | Nền tảng định tuyến đa nhà cung cấp Viindoo Mô-đun Cơ Sở Ghi nhật ký API Request |
| Các mở rộng | Kế Toán Tuyến Đường - Chi phí theo Tuyến Địa Lý |
What a lane costs, and what it earns
Geographic routes linked to analytic accounts and invoices, for route-based cost and revenue analysis.
Route Cost & Revenue Accounting (technical name to_geo_routes_account) is an Odoo 17.0 app for Odoo Community and Odoo Enterprise and Viindoo Cloud, built for operations, manager, finance, it.
At a Glance
The facts of Route Cost & Revenue Accounting, version 0.1.1, in one place. Published by Viindoo.
How It Works
Three screens.
The routes
The lanes you run.
The analytic items
Everything posted against them.
One route
Its sections, and its account.
What You Get
An analytic account per geographic route
Invoices linked to the route
Cost and revenue accumulated per lane
Lane profitability in standard analytic reporting
Works with the routes you already defined
Installed as a bridge when both apps are present
More Screens
Everything below was taken on a database seeded with real business data, on this series - not a mock-up and not a screenshot from an older version.
A route
What This App Does Not Do
Read this before you buy. Everything below is something the app deliberately leaves to another app or to you.
Entries come from invoices and bills.
Overhead is not spread across lanes.
Routes are defined elsewhere.
Geo Routes and Accounting.
Works Well With
Apps from the same stack, built to fit this one:
Who Should Use Route Cost & Revenue Accounting?
Operations
Works from the record, not a side file.
Manager
Sees what is happening while it happens.
Finance
Costs it against something real.
IT
One mechanism instead of several.
Frequently Asked Questions
What does Route Cost & Revenue Accounting do?
Geographic routes linked to analytic accounts and invoices, for route-based cost and revenue analysis.
What does Route Cost & Revenue Accounting not do?
It does not post anything. Entries come from invoices and bills. It does not allocate shared cost. Overhead is not spread across lanes. It does not plan routes. Routes are defined elsewhere. It needs both apps. Geo Routes and Accounting.
Who is Route Cost & Revenue Accounting for?
Operations: Works from the record, not a side file. Manager: Sees what is happening while it happens. Finance: Costs it against something real. IT: One mechanism instead of several.
Which Odoo version and editions does it support?
Odoo 17.0 - Odoo Community, Odoo Enterprise, Viindoo Cloud. Upgrades to a newer Odoo series are a separate purchase for that series.
What does it depend on?
It installs on top of: to_geo_routes, account. Odoo installs them with it.
How do I set it up?
Three screens.
What works well with it?
Shipments on routes (viin_logistics_route): Which shipments run each lane. Shipment analytics (viin_logistics_account): The same treatment per shipment. Freight Management (viin_freight_management): The operational side.
Can I try it before buying?
Yes - the Live Preview button at the top of this page opens the module's own screen on a working database.
How do I get support?
Write to apps.support@viindoo.com with your Odoo version and the technical name to_geo_routes_account; pre-sales questions go to sales@viindoo.com.
See Route Cost & Revenue Accounting in Action
Live demo: v17demo-int.viindoo.com/web#action=to_geo_routes.geo_route_action
Need help with Route Cost & Revenue Accounting?
For questions, implementation support or a custom feature, contact Viindoo.
Pre-Sales & Partnership
sales@viindoo.comUpgrades to a newer Odoo series are a separate purchase for that series.
All Viindoo apps: apps.odoo.com/apps/modules/browse?author=Viindoo
Technical Requirement
Changes log
0.1.1 - Latest on the 17.0 line
- Aligned with the 17.0 models of the apps it bridges.
Kế toán doanh thu & chi phí theo tuyến đường (to_geo_routes_account)
Cài đặt
- Vào Ứng dụng.
- Tìm to_geo_routes_account.
- Nhấn Kích hoạt.
Note
to_geo_routes_account mở rộng Nền tảng Định tuyến đa nhà cung cấp Viindoo (to_geo_routes) với các tính năng kế toán dành riêng cho tuyến đường. Ứng dụng yêu cầu module Kế toán (account) của Odoo/Viindoo.
Cấu hình
Sơ đồ tài khoản quản trị cho tuyến đường
Sau khi cài đặt, hệ thống sẽ tạo sẵn một sơ đồ quản trị:
- Sơ đồ Tuyến đường Địa lý (Geographical Route Analytic Plan)
- Dùng để gán mỗi tuyến đường với một Tài khoản quản trị (Analytic Account)
- Các khoản phân bổ chi phí/doanh thu theo tuyến được ghi nhận dưới dạng Phát sinh kế toán quản trị (Analytic Item)
Sơ đồ này được bảo vệ và không thể xóa khi vẫn còn tuyến đường đang sử dụng.
Bổ sung trên form tuyến đường
Trên form Tuyến đường (model route.route), module thêm:
- Trường Tài khoản quản trị
- Nút thông minh Hóa đơn mua (Vendor Bills)
- Nút thông minh Hóa đơn bán (Customer Invoices)
- Hành động Tạo tài khoản quản trị (nếu được bật)
Người dùng không cần cấu hình gì thêm. Các phần này tự xuất hiện sau khi cài module.
Quyền truy cập
- Chỉ người dùng kế toán (có quyền Accountant) mới được phép tạo Tài khoản quản trị từ tuyến đường.
- Người dùng nội bộ thông thường có thể:
- Xem Tài khoản quản trị của tuyến (nếu được phân quyền truy cập)
- Mở danh sách Hóa đơn mua và Hóa đơn bán từ các nút thông minh (theo quyền kế toán hiện có)
Note
Module không tự động tạo Tài khoản quản trị cho tất cả tuyến đường. Việc tạo chỉ diễn ra khi có nhu cầu thực tế, ví dụ khi xác nhận chuyến xe, booking logistics, v.v.
Hướng dẫn sử dụng – Dành cho Người dùng
Tổng quan
Với tư cách người dùng vận hành, Kế toán doanh thu & chi phí theo tuyến đường cho phép bạn:
- Gán mỗi tuyến quan trọng với một Tài khoản quản trị.
- Theo dõi đầy đủ chi phí và doanh thu theo tuyến.
- Mở nhanh danh sách Hóa đơn mua / bán liên quan đến tuyến qua các nút thông minh.
Tạo tài khoản quản trị cho tuyến
Có hai cách tuyến đường có Tài khoản quản trị:
- Tự động (bởi module ngành dọc)
- Trong các module như Lập kế hoạch Đội xe, Freight… khi bạn xác nhận một chứng từ (trip, booking, vận đơn), module đó gọi hàm route._generate_analytic_account_if_not_exists().
- Nếu tuyến chưa có Tài khoản quản trị, hệ thống sẽ tạo mới và liên kết.
- Thủ công
- Mở tuyến đường.
- Chọn Tạo tài khoản quản trị.
- Hệ thống tạo mới Tài khoản quản trị theo quy tắc và gắn với tuyến nếu nó chưa có.
Note
Module sử dụng quy tắc đặt tên và mã tài khoản để tránh trùng lặp và tránh phát sinh tài khoản rác.
Cách Hóa đơn mua và Hóa đơn bán được liên kết với tuyến
Khác với các module khác, module này không thêm trường route_id vào account.move. Thay vào đó, quan hệ được suy ra từ Phát sinh kế toán quản trị (Analytic Items):
- Khi Hóa đơn mua hoặc Hóa đơn bán được ghi sổ: - Kế toán phân bổ chi phí/doanh thu qua phân bổ kế toán quản trị - Nếu phần phân bổ nằm trên Sơ đồ Tuyến đường Địa lý, trỏ vào tài khoản tuyến → hệ thống hiểu chứng từ đó thuộc tuyến
Từ đó tuyến sẽ hiển thị:
- Nút Hóa đơn mua: mở danh sách hóa đơn có Analytic Items trên tài khoản tuyến
- Nút Hóa đơn bán: tương tự cho hóa đơn bán
Ví dụ quy trình
- Điều phối hoặc kế hoạch xác nhận một chuyến xe, hoặc một booking freight.
- Module ngành dọc gọi: route._generate_analytic_account_if_not_exists().
- Hóa đơn mua/bán được tạo trong Kế toán.
- Kế toán phân bổ chi phí/doanh thu vào Tài khoản quản trị của tuyến.
- Tuyến đường tự động hiển thị:
- Số lượng Hóa đơn mua
- Số lượng Hóa đơn bán
- Nút để mở danh sách chứng từ liên quan
Hướng dẫn sử dụng – Dành cho Kế toán
Những thay đổi đối với đội ngũ kế toán
Kế toán sẽ có thêm:
- Một sơ đồ quản trị mới chuyên cho Tuyến đường.
- Một Tài khoản quản trị cho mỗi tuyến có sử dụng thực tế.
- Khả năng xem tổng chi phí/doanh thu theo tuyến mà không cần custom fields.
Khi hạch toán chứng từ
Khi ghi sổ (post) hóa đơn mua / bán:
- Sử dụng phân bổ kế toán quản trị (analytic distribution)
- Chọn Tài khoản quản trị của tuyến trên Sơ đồ Tuyến đường Địa lý
Hệ thống sẽ:
- Tự động tổng hợp chi phí/doanh thu theo tuyến.
- Hiển thị số liệu liên quan ngay trên form tuyến đường.
Hướng dẫn cho Lập trình viên
Tổng quan kỹ thuật
to_geo_routes_account hoạt động như một nền tảng kế toán cho các module ngành dọc, cho phép:
- Mỗi tuyến → một Tài khoản quản trị (khi cần)
- Phát sinh kế toán quản trị → liên kết Vendor Bills / Customer Invoices với tuyến
- Các module ngành dọc tự do mở rộng mà không phải tạo cấu trúc kế toán riêng
Sinh tài khoản tuyến theo yêu cầu
Module ngành dọc không được tự sinh tài khoản khi tạo tuyến. Thay vào đó phải gọi:
from odoo import models class FleetTrip(models.Model): _inherit = 'fleet.trip' def action_confirm(self): res = super().action_confirm() for trip in self: route = trip.route_id if route: route._generate_analytic_account_if_not_exists() return res
Quy tắc:
- Chỉ gọi hàm này khi nghiệp vụ thực sự sử dụng tuyến (ví dụ xác nhận chuyến)
- Không gọi trong create() hoặc write() của tuyến
- Không tự tạo cân đối kế toán thủ công – luôn dùng hàm trên
Ghi nhận chi phí/doanh thu theo tuyến
Để ghi chi phí/doanh thu cho tuyến:
- Tạo Phát sinh kế toán quản trị (analytic item) trên tài khoản tuyến
- Thuộc Sơ đồ Tuyến đường Địa lý
Module cung cấp helper:
- _get_analytic_plan_geo_route()
- _get_route_account_column_name()
Ví dụ tạo analytic item:
analytic_line_model = self.env['account.analytic.line'] route_plan = analytic_line_model._get_analytic_plan_geo_route() column_name = analytic_line_model._get_route_account_column_name() analytic_line_model.create({ 'name': 'Phân bổ chi phí tuyến', 'company_id': company.id, 'date': fields.Date.today(), 'account_id': route.analytic_account_id.id, column_name: route.analytic_account_id.id, 'amount': -100.0, 'move_line_id': move_line.id, })
Mở rộng nút thông minh
Model route.route cung cấp:
- account_move_ids: danh sách các hóa đơn mua/bán liên quan đến tuyến
- bill_count / invoice_count: số lượng hóa đơn mua/bán
- action_view_vendor_bills()
- action_view_customer_invoices()
- action_generate_analytic_account()
Lập trình viên có thể:
- Kế thừa để mở rộng domain
- Đặt chúng trong menu module của mình
- Tạo báo cáo dùng lại các dữ liệu này
Bảo vệ sơ đồ và tài khoản quản trị
Module đảm bảo:
- Sơ đồ Tuyến đường Địa lý không thể bị xóa khi còn route sử dụng
- Tài khoản quản trị:
- Không thể xóa nếu đang dùng bởi tuyến
- Có liên kết ngược route_ids
- Có trường tắt route_id để tiện điều hướng từ kế toán
Những bảo vệ này giúp giữ dữ liệu kế toán tuyến nhất quán.
Khuyến nghị
Cho Người dùng
- Chỉ tạo Tài khoản quản trị cho các tuyến sử dụng thực tế.
- Luôn dùng phân bổ kế toán quản trị để ghi chi phí/doanh thu theo tuyến.
- Mở hóa đơn liên quan từ nút thông minh trên tuyến để đảm bảo lọc đúng.
Cho Lập trình viên
- Luôn dùng _generate_analytic_account_if_not_exists(), không tự tạo tài khoản.
- Không thêm trường route_id vào account.move — hãy dựa vào analytic items.
- Luôn sử dụng helper từ account.analytic.line để giữ tính nhất quán.
- Không dùng sudo() để vượt qua cơ chế bảo vệ tài khoản trừ khi thực sự cần.
Tóm tắt
to_geo_routes_account (Kế toán doanh thu & chi phí theo tuyến đường) cung cấp:
- Sơ đồ và cấu trúc kế toán quản trị chuyên cho tuyến đường
- Liên kết chặt chẽ giữa Tuyến đường → Tài khoản quản trị → Phát sinh kế toán quản trị
- Nút thông minh cho Hóa đơn mua / Hóa đơn bán ngay trên tuyến
- API mở rộng cho module ngành dọc (Đội xe, Freight, Logistics)
Đây là lớp kế toán mở rộng của Nền tảng định tuyến đa nhà cung cấp Viindoo, giúp các giải pháp logistics trong hệ sinh thái Viindoo có thể phân tích chi phí–doanh thu theo tuyến một cách nhất quán và linh hoạt.
Phần mềm này và các tệp liên kết ("Phần mềm") được sử dụng (chạy, tuỳ biến, chạy sau khi được tuỳ biến) chỉ khi bạn mua được giấy phép có hiệu lực từ tác giả, điển hình như qua các Ứng dụng Odoo, hoặc trong trường hợp bạn nhận được thoả thuận bằng văn bản từ tác giả của Phần mềm (chi tiết tại tệp COPYRIGHT).
Bạn có thể phát triển các phân hệ Odoo có sử dụng Phần mềm như một Thư viện (thường là phụ thuộc vào, nhập vào và sử dụng nguồn của nó) nhưng không sao chéo bất kỳ mã nguồn hay tài liệu nào thuộc Phần mềm. Bạn có thể phân phối những phân hệ này theo giấy phép mà bạn lựa chọn, miễn sao nội dung giấy phép đó tương tích với điều khoản của Giấy phép Phần mềm Độc quyền Odoo (ví dụ: LGPL, MIT hay bất kỳ loại giấy phép phần mềm độc quyền nào tương tự vậy).
Nghiêm cấm phát hành, phân phối, cấp phép lại hoặc bán bản sao của Phần mềm hoặc bản sao Phần mềm đã được sửa đổi.
Thông báo bản quyền và chấp thuận nêu trên buộc phải được bao gồm trong tất cả các bản sao hoặc các phần quan trọng của Phần mềm.
PHẦN MỀM ĐƯỢC CUNG CẤP "NGUYÊN TRẠNG", KHÔNG BẢO ĐẢM DƯỚI BẤT KỲ HÌNH THỨC NÀO, ĐƯỢC THỂ HIỆN RÕ RÀNG HOẶC NGỤ Ý, KHÔNG GIỚI HẠN ĐẢM BẢO VỀ CÁC BẢO ĐẢM NGỤ Ý VỀ KHẢ NĂNG THƯƠNG MẠI, PHÙ HỢP VỚI MỤC ĐÍCH CỤ THỂ VÀ KHÔNG VI PHẠM. TRONG MỌI TRƯỜNG HỢP SẼ KHÔNG CÓ TÁC GIẢ HOẶC CHỦ SỞ HỮU BẢN QUYỀN NÀO CHỊU TRÁCH NHIỆM VỀ BẤT KỲ KHIẾU NẠI, THIỆT HẠI HOẶC TRÁCH NHIỆM PHÁP LÝ KHÁC NÀO TRONG PHẠM VI HỢP ĐỒNG, CÁC THIỆT HẠI HOẶC CÁCH KHÁC, PHÁT SINH TỪ, NGOÀI HOẶC CÓ LIÊN KẾT VỚI PHẦN MỀM HOẶC VIỆC SỬ DỤNG HOẶC KINH DOANH KHÁC TẠI PHẦN MỀM.