3. • 5 UATs/Feeback visits conducted so far
• Changes from Test site migrated to
Production site
• Doctypes customized: Job Opening, Job
Applicant, Job Offer, Employee, Staffing
Plan (New), Travel Request, Employee
Onboarding/Separation, Employee
Transfer/Promotion, Expense Claims
13. Noticeable Fixes
• Roundingadjustment in caseof additional discount
• Statusupdation on PO from PR/ PI
• Opening accounting Entry for StockEntry / Reconciliation
• InvoiceDiscounting fixes and cleanup
14. Noticeable Fixes
• Separateinput for Over BillingAllowance
• Blankcustomer issue(via EmailAlert)
• Optimization of communication query
• Marginamount basedon exchange rate
74. • Provision to handle DDOS
• Yearly plan add-ons based onPro-Rata
• UI to reinstall site and setup journeys configs
• Do not show pay via credit to customers
• Update bench scripts for server installation
75. • Fix subscription cancellation page
• Permission and enqueueing prepared reports
• Patch fixe s
• Shopify sync fixes
• Quotation To and Party Name fixes
• Pull city and state in lead from IP
76. • Easy install script fixes for CentOS
• Setup demo server
85. Procurement and Stocks
• Matching good portion of requirements out-of-the-box
• Once approved by Finance, procurement can be
proposed to one of the service based company.
• Procurement and Stocks team will prepare point-wise
analysis
• Pick-list and Advance Shipping Notification can be added
to our roadmap
98. Vision
Implementation
Would like to do
implementation. Gather
requirements, Gap analyses.
Documentation
FDD, module or
functionality specific
documents
Product knowledge
Want to gain more
knowledge about product
and services.
Other……
Would like to understand
the backend (Code)
101. Fixes to Version Upgrade Request
● Some commit in central rolled back a callback that was supposed to help with
automated migrations.
● A weird backup showed up in the system from over 2 years ago. Not a
backup, but just a record of it. Wonder what would’ve happened if it actually
existed and the customer got migrated back to it.
102. New Demo Page
● Made updates to the demo page.
● Fixed the demo script, created new demo instances on DigitalOcean.
● Retired the old demo.erpnext.com page.
○ Now it is a home to 3 other demos:
■ Manufacturing
■ Retail
■ Services
104. Subscription Expiry and Trial Information in Issues
Just because I was tired of
“Hey, iska account kab expire ho raha hai check karke bata na please.”
Issues now have a checkbox, and a field with account expiry date to help figure
out whether the customer can be helped or should be left on their own.
105. Ares
“Tu jaanta nahi online.net ka baap kaun hai”
- Some guy from Delhi, probably
106. 24C/48T, 64GB RAM, 2x1TB SSD RAID
All combined with glorious RGB*
* Terms and ConditionsApply
107. Ares Setup
● Setting up the server was a breeze given my history with Linux. But I don’t like
things without any experimentation.
● Ares runs Proxmox, a Debian based distribution with a Web UI for deploying
KVM machines.
● It has RAID, running ZFS on top of both disks mirrored to each other.
● The name “Ares” comes from the Greek mythology, the “God of War”.
● The VM is now completely setup, provisioning of local VM’s is just a few clicks
away.
108. Status page
● Shows system services uptime status
● Live right now on status.maych.in
112. To the Future
2 VideosOverdue!
Documentation and Marketing Material For Partners
Singular Focus on Asset creation for Partners (marketing as
well as trainings)
117. Version 12 (contd.)
● DebuggingandRemovalof allsetupwizard
messageswithhelpfromFarisandSaurabh.
118. Version 12 (contd.)
● Researchfor newbaremetalserverprovider.
● All the other providers like IBM, Rackspace,
PhoenixNAP,Linodewhereeithertoocostly,or
to small for our needs, hence went with
online.netagain.
● “Lautkebuddhoogharkoaaye.”
119. Version 12
(contd.)
● Releasepage:
○ Basicskeletonfor thepageisready,justhave
to fill in those cards and link it to the
documentation.
○ Waitingfor theDRIsto finish
with theirdocumentation.
120. Ares Server
● After alot of discussionsonhavingourown
servers,we(me,ChinmayandShivam)finally
boughtourownserver.
● HelpedChinmaywiththeinstallationof
ProxmoxVE onourserver.
● Proxmox tightly integrates KVM hypervisor,
LXCcontainers,softwaredefinedstorageand
networkingfunctionality onasingleplatform.
124. Google Translate for missing translations
● Most of the work was already done, Saurabh
createdanewaccountfor APItranslationsand
movedalltranslationrelatedcodeto aseparate
server. Learned the whole flow of how
translationworks
125. Translation Portal
● Meansfor theuserto contribute translations
directly fromfrappe.
● First level is done, all the translations will be
stored in the translation app. Only a small step
for addingthesecontributions to thetranslation
list fromwhichthePR isgeneratedisremaining.
134. Eh!
• Google Contacts Integration.
• E-Mail Link.
• Communication Link to multiple DocTypes.
• Change Service Level Agreement and Priority.
• Quality Management.
• ERPNext Support App.
• Support
139. E-Mail Link
• Append Email Communication to Document if Sender,
Receiver, Cc or Bcc email address contains DocType and
DocName.
• email_id+doctype+name@example.com
• Appending notes to your username by adding a "+"
followed by the notes, Gmail and Yahoo will read the "+"
and ignore it and anything after it.
141. Communication Link
• Linking a Communication to multiple DocTypes.
• An Email received will be linked to the Customer, Supplier
or any other Document present in the Dynamic Link of the
Contact.
149. • Engaged with 3 prospects
• Reply to open opportunities
• Weekend support
• Electrolab plant visit
• Active participation in FF and
committee meetings
• New office search
• Football with team
158. Other
• Releases
Bank Remittance
• Issues
Has permission
Print format builder setup
Training event fix
User permission validation
Unlink task from project on deletion
Custom script for trimdepot
Custom Html view
Dashboard chart fix for non custom type
161. 1st sprint
(2 - 10 May)
• Billing Summary (Refactor).
• Rewrite the Subcontracted Report.
• Fixed Bulk User Permission.
• Solved 4 kaizen.
162. 2 - 10 May
• Test for Bank Remittance report.
• Test for Bulk User Permission fixes.
• Completed Quality Inspection feature to warn and
stop if not submitted.
163.
164. 2 - 10 May
• Worked on feature for syncing Stock Value and
Account Balance.
• Fix for frappe.utils.add_to_date.
• Industrial visit.
• Document Follow fixes.
• Follow Document on creation.
• Previously Mail was sent even after disabling.
• Fixed Frequency.
165. 10 - 20 May
• Feat: Report for showing complete hierarchy
of BOM with Item Details and scraps .
166.
167. 10 - 20 May
• Fix: Item Variants description based on attribute
value.
• Fix: Report print format for indent row.
• Fix: sales Order status for order type
‘Maintenance’.
• Feat: Added Warehouse Type master. Also added
as a filter in Stock Balance report.
168.
169. 10 - 20 May
• Fix: Doctype and added some tests.
• After started writing tests.
• Tests: BOM items and scraps Report.
• Tests: Bank Remittance Report.
170. 20 - 31May
• Fix: Holidays from Holiday list was showing on
same day.
• Fix: Change dialog field to select when we get
Supplier by Tag.
171.
172. 20 - 31May
• Added Dashboards in HR module.
• Make stock entry against purchase receipt and
some minor fixes in work order.
173. Apart from that
Closed 26 issues.
15 kg weight gone.
Closed 7 gantt issue.
I can run 30-35 min with 10 km/h.
176. GETTING DEEPER IN DOCS
• Completed Selling & Buying module docs features. Now
anyone can use it as a complete reference!
• Added in depth features, ever y checkbox, field etc.,
updated screenshots & GIFs
• 4 repor t in selling module were not listed on the product,
added them
• Finding and repor ting useless fields, bugs as I find them
179. OTHER THINGS
• Reviewed many doc PRs, big and small
• Faris made a train tunnel between headings - CSS.
Fixed that
• Enhanced the Job Application form for visibility and
clarity
• Created instructions for writing Open Day Blogs
183. A few bugsPeople think that computer science is the art of geniuses but
the actual reality is the opposite, just many people doing
things that build on each other, like a wall of mini stones.
Donald Knuth
186. And then a fewDebugging is twice as hard as writing the code in the first
place. Therefore, if you write the code as cleverly as possible,
you are, by definition, not smart enough to debug it.
Brian Kernighan and P.J. Plauger, The Elements of Programming
Style
188. Why????
1. Starts with the error
AttributeError: 'datetime.date' object has no attribute ‘hour’
2. So in frappe codebase, there is data.py
def get_user_format():
if getattr(frappe.local, "user_format", None) is None:
frappe.local.user_format = frappe.db.get_default("date_format")
return frappe.local.user_format or “yyyy-mm-dd"
3. This gets the default date format from System Settings in
ERPNext.
4. The user has customized the system settings, set the date
format to 14th April 2018 which is causing everything to break,
babel gets an illegal date format and all hell breaks loose.
190. Frappe Charts
There are two ways of constructing a software design: One way is to make it so
simple that there are obviously no deficiencies, and the other way is to make it so
complicated that there are no obvious deficiencies.
195. Debugging is twice as hard as writing the code in the first
place. Therefore, if you write the code as cleverly as possible,
you are, by definition, not smart enough to debug it.
Brian Kernighan and P.J. Plauger, The Elements of Programming Style
197. Some HelpingIf you have knowledge, let others light their candles at it.
Margaret Fuller
(Leaded the American Transcendentalism Movement)
198. • Webhooks, Custom Scripts with Basaw
• Some issues with Anurag and Rucha
• Introduced Rucha to the Frappe Framework, the product
and others
• Helped Chinmay with the Status Page
200. Major Projects
Too bad! Same old story! Once you’ve finished building your house you notice you’ve
accidentally learned something that you really should have known—before you started.
Friedrich Nietzsche, Beyond Good and Evil
202. What has changed
1. Better Written Classes
2. Written a small data table
3. Web forms are technically embeddable in any website.
Rushabh ka idea!! !
4. Major Bug Fixes:
1. Rewritten List View
2. List View Filters
3. Grid view not working at all
4. Link Fields not rendering
5. What’s Breaking?
1. Pagination, as of now.
205. Ingredients
• Frappe
• Frappe Theme
It’s complicated
• ERPNext
You’ll need it eventually
• VueJS
You’ll remove it eventually
• Jinja
There is always Jinja
206. Steps
1. Start Academy as a separate app with Jinja
2. Add it to ERPNext with Jinja
3. Remove Jinja for Vue
4. Add Frappe Theme
5. Remove Frappe Theme
6. Add Frappe Theme
7. Remove Vue for Jinja
8. Remove it from ERPNext
9. Rename it to Academy and make a separate app
207. Refactor v4 to be
merged soon
Below the surface of the machine, the program moves. Without effort, it expands and
contracts. In great harmony, electrons scatter and regroup. The forms on the monitor
are but ripples on the water. The essence stays invisibly below.
Master Yuan-Ma, The Book of Programming