Hello everyone,
I work as a full-stack developer, and I'm not very familiar with Odoo. However, I have a client who hired a third-party company to install and configure Odoo for them. They installed and configured Odoo 15 Community edition. At some point, I customized a report template through code. However, since they hired the other company, they decided to install Studio to apply different customizations and adjusted various reports, among other things. However, there's an issue where sometimes the report prints correctly, and other times the information appears disorganized. The company they hired has been unable to find a solution for several months and blames it on having installed Studio (although it was their suggestion). They also experienced server slowness issues that their provider couldn't resolve. For these reasons, my client decided to seek my support. Here's what I've done and some questions I have that you might be able to help with:
- I read the Odoo documentation and set up a droplet on DigitalOcean, where I installed Odoo 15 according to the documentation. I spent some time solving problems with the versions of some libraries, but it worked, and the speed improved. However, the issue with the reports persists.
- I continued investigating and thought the issue with the reports might be related to the version of some library. I discovered that it was much simpler to install Odoo using Docker. So, I decided to set it up using Docker, considering that the image comes with the exact versions needed for Odoo to function. I thought this would solve the problem with the reports, but it didn't. I managed to improve the server's performance but couldn't fix the report problem.
However, I'm working with the modules that the previous provider had at the time of installing Odoo for my client. Here's the list of currently installed modules in case it's useful:
Addons:
Bash:
account l10n_do pos_gift_card
account_accountant l10n_dz pos_hr
account_asset l10n_ec pos_mercury
account_auto_transfer l10n_eg pos_restaurant
account_bank_statement_import l10n_eg_edi_eta pos_restaurant_adyen
account_bank_statement_import_camt l10n_es pos_sale
account_bank_statement_import_csv l10n_es_edi_sii pos_sale_margin
account_bank_statement_import_ofx l10n_et pos_sale_product_configurator
account_bank_statement_import_qif l10n_eu_oss pos_six
account_check_printing l10n_fi product
account_debit_note l10n_fi_sale product_email_template
account_edi l10n_fr product_expiry
account_edi_facturx l10n_fr_facturx_chorus_pro product_images
account_edi_proxy_client l10n_fr_fec product_margin
account_edi_ubl l10n_fr_pos_cert product_matrix
account_edi_ubl_bis3 l10n_gcc_invoice project
account_edi_ubl_cii l10n_gcc_invoice_stock_account project_account
account_fleet l10n_gcc_pos project_hr_expense
account_followup l10n_generic_coa project_mail_plugin
account_lock l10n_gr project_mrp
account_payment l10n_gt project_purchase
account_qr_code_sepa l10n_hk project_timesheet_holidays
account_reports l10n_hn purchase
account_reports_cash_basis l10n_hr purchase_mrp
account_sale_timesheet l10n_hu purchase_product_matrix
account_tax_python l10n_id purchase_requisition
account_test l10n_id_efaktur purchase_requisition_stock
analytic l10n_ie purchase_requisition_stock_dropshipping
association l10n_il purchase_stock
attachment_indexation l10n_in rating
auth_ldap l10n_in_edi repair
auth_oauth l10n_in_edi_ewaybill resource
auth_password_policy l10n_in_pos sale
auth_password_policy_portal l10n_in_purchase sale_coupon
auth_password_policy_signup l10n_in_purchase_stock sale_coupon_delivery
auth_signup l10n_in_sale sale_crm
auth_totp l10n_in_sale_stock sale_expense
auth_totp_mail l10n_in_stock sale_gift_card
auth_totp_mail_enforce l10n_in_upi sale_management
auth_totp_portal l10n_it sale_margin
barcodes l10n_it_edi sale_mrp
barcodes_gs1_nomenclature l10n_it_edi_sdicoop sale_mrp_margin
base_address_city l10n_it_stock_ddt sale_product_configurator
base_address_extended l10n_jp sale_product_matrix
base_automation l10n_ke sale_project
base_geolocalize l10n_ke_edi_tremol sale_project_account
base_iban l10n_latam_base sale_purchase
base_import l10n_latam_invoice_document sale_purchase_stock
base_import_module l10n_lt sale_quotation_builder
base_setup l10n_lu sale_sms
base_sparse_field l10n_lu_peppol_id sale_stock
base_vat l10n_ma sale_stock_margin
board l10n_mn sale_timesheet
bus l10n_multilang sale_timesheet_margin
calendar l10n_mx sales_team
calendar_sms l10n_my sms
contacts l10n_nl snailmail
coupon l10n_nl_edi snailmail_account
crm l10n_no social_media
crm_iap_enrich l10n_no_edi stock
crm_iap_mine l10n_nz stock_account
crm_livechat l10n_pa stock_dropshipping
crm_mail_plugin l10n_pe stock_landed_costs
crm_sms l10n_ph stock_picking_batch
delivery l10n_pk stock_sms
delivery_mondialrelay l10n_pl survey
digest l10n_pt test_base_automation
event l10n_ro test_discuss_full
event_booth l10n_rs test_event_full
event_booth_sale l10n_sa test_mail
event_crm l10n_sa_invoice test_mail_full
event_crm_sale l10n_sa_pos test_mass_mailing
event_sale l10n_se test_website
event_sms l10n_sg test_website_modules
fetchmail l10n_si test_website_slides_full
fetchmail_gmail l10n_sk test_xlsx_export
fetchmail_outlook l10n_syscohada theme_default
fleet l10n_th transifex
gamification l10n_tr uom
gamification_sale_crm l10n_tw utm
gift_card l10n_ua web
google_account l10n_uk web_dashboard
google_calendar l10n_us web_editor
google_drive l10n_uy web_gantt
google_gmail l10n_ve web_kanban_gauge
google_recaptcha l10n_vn web_tour
google_spreadsheet l10n_za web_unsplash
hr link_tracker website
hr_attendance lunch website_blog
hr_contract mail website_crm
hr_expense mail_bot website_crm_iap_reveal
hr_fleet mail_bot_hr website_crm_livechat
hr_gamification mail_group website_crm_partner_assign
hr_holidays mail_plugin website_crm_sms
hr_holidays_attendance maintenance website_customer
hr_maintenance mass_mailing website_event
hr_org_chart mass_mailing_crm website_event_booth
hr_presence mass_mailing_crm_sms website_event_booth_exhibitor
hr_recruitment mass_mailing_event website_event_booth_sale
hr_recruitment_survey mass_mailing_event_sms website_event_booth_sale_exhibitor
hr_skills mass_mailing_event_track website_event_crm
hr_skills_slides mass_mailing_event_track_sms website_event_crm_questions
hr_skills_survey mass_mailing_sale website_event_exhibitor
hr_timesheet mass_mailing_sale_sms website_event_meet
hr_timesheet_attendance mass_mailing_slides website_event_meet_quiz
hr_work_entry mass_mailing_sms website_event_questions
hr_work_entry_contract membership website_event_sale
hr_work_entry_holidays microsoft_account website_event_track
http_routing microsoft_calendar website_event_track_live
hw_drivers microsoft_outlook website_event_track_live_quiz
hw_escpos mrp website_event_track_quiz
hw_l10n_eg_eta mrp_account website_form_project
hw_posbox_homepage mrp_landed_costs website_forum
iap mrp_product_expiry website_google_map
iap_crm mrp_repair website_hr_recruitment
iap_mail mrp_subcontracting website_jitsi
im_livechat mrp_subcontracting_account website_links
im_livechat_mail_bot mrp_subcontracting_dropshipping website_livechat
l10n_account_edi_ubl_cii_tests mrp_subcontracting_purchase website_mail
l10n_ae note website_mail_group
l10n_ae_pos note_pad website_mass_mailing
l10n_ar pad website_membership
l10n_ar_website_sale pad_project website_partner
l10n_at partner_autocomplete website_payment
l10n_au payment website_profile
l10n_be payment_adyen website_sale
l10n_be_edi payment_alipay website_sale_comparison
l10n_bg payment_authorize website_sale_comparison_wishlist
l10n_bo payment_buckaroo website_sale_coupon
l10n_br payment_mollie website_sale_coupon_delivery
l10n_ca payment_ogone website_sale_delivery
l10n_ch payment_paypal website_sale_delivery_giftcard
l10n_cl payment_payulatam website_sale_delivery_mondialrelay
l10n_cn payment_payumoney website_sale_digital
l10n_cn_city payment_sips website_sale_gift_card
l10n_co payment_stripe website_sale_product_configurator
l10n_co_pos payment_test website_sale_slides
l10n_co_reports payment_transfer website_sale_stock
l10n_cr phone_validation website_sale_stock_product_configurator
l10n_cz point_of_sale website_sale_stock_wishlist
l10n_de portal website_sale_wishlist
l10n_de_purchase portal_rating website_slides
l10n_de_repair pos_adyen website_slides_forum
l10n_de_sale pos_cache website_slides_survey
l10n_de_skr03 pos_coupon website_sms
l10n_de_skr04 pos_discount website_twitter
l10n_de_stock pos_epson_printer
l10n_dk pos_epson_printer_restaurant
Custom Addons:
Bash:
OpenHRMS
dynamic_odoo
jorels-odoo-addons
l10n_co_city
reports_garken
sale_discount_display_amount
Now, providing some additional details, I've been monitoring the logs but haven't found any errors related to printing reports. I think it's important to mention that once the server starts, the reports work fine. But after some time, the reports start printing with disorganized information. Restarting the Odoo service makes them print correctly again, but the cycle repeats endlessly, which makes me think the issue might be related to the cache.
Removing Studio has been considered but hasn't been done because there are so many customizations that ideally, it should work.
Now, as I mentioned earlier, I have no knowledge or experience with Odoo. However, I'd like to solve my client's problem, so I have some questions if you can help:
- Have you experienced something similar or do you have any ideas to solve it?
- Do you have a different version of Studio that you can share with me to test if that's what's causing the problem and perhaps changing it could solve it?
- I think with the tests I've done, I'm already an expert in migrating Odoo, but within the same version. I would also like to upgrade to version 17, which I saw is the latest, but when I tried, I encountered compatibility issues with the modules. Could you recommend a guide or indicate how I could do this? Also, is it a good idea to upgrade (usually it is)?
- My interaction with Odoo these days has been at the server level, but nothing regarding management or functionality. From the names of many modules, I think I could remove several. Any suggestions?
I appreciate your comments and assistance; they would be of great support. Also, if my experience with migrations or installations from Docker is useful to you, I'll gladly share any information you require.
Thank you.