Git Product home page Git Product logo

civil_contracting's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

civil_contracting's Issues

Show "Make Payment Entries" Button after submitting "Worker Sheet"

After "Worker Sheet" is submitted show button to "Make payment entry"; just like "Expense Claim" or "Sales Invoice" in ERPNext

Journal Entries: (Ledgers are selected in Systems singles doctype "Worker Sheet Settings"

  • Wages A/c (Ledger selected for wages) Debit
  • Other Worker Expense A/c (Ledger selected for Worker Expenses) Debit
  • To Cash/Bank A/c (as per Selected Mode of Payment)
  • To Outstanding Wages (Selected Ledger O/S Wages A/c)

Add Comment to "BOM" after Submitting "Measurement Sheet"

After Submitting "Measurement Sheet" add a comment to BOM selected in the "Measurement Sheet" as per permissions or show appropriate "not permitted" message and skip commenting (or suggest better logic)

Comment under BOM:

  • Measurement Sheet Submitted: {{ url-to-measurement-sheet }}

Make Journal Entry Does not work

I am testing this module out however 'Make Journal Entry' does not seem to make any entry to the system. And no error message .. Please share your experience

Suggestion: Material and Progress Handling

Too bad this app is not included in the core as its own domain.

Adding Contract, Material and Progress handling would make it a complete domain package.
Among others:

Contract management:

  • create Project Costing from Contract (utilizing the BOM -> which need a little adjustment to separate the material, services, consumables, and equipments) => deduct % (or amount) of margin from Contract breakdown (substraction method).
  • alternatively, Project Costing -> SO -> Contract (additional method).
  • Project profit report.
  • create PO from Project Costing (with editable prices).

Material management:

  • report to compare material/service/consumables/equipment purchased, received, and used.
  • relate them to the warehouse/location management.

Progress management:

  • relate it to Project module for task management: e.g. service purchase is converted to task.
  • report to see progress based on material purchased/used.
  • material schedule --> relate to material management
  • display the S-curve to see plan vs. progress

Unable to install civil_contracting

Hi Revant,

Nice work, but the install-app phase dies with the following with Ubuntu 16.04 host with docker_frappe.

Installing civil_contracting...
Updating DocTypes for civil_contracting: [========================================]
Traceback (most recent call last):
  File "/usr/lib/python2.7/runpy.py", line 174, in _run_module_as_main
    "__main__", fname, loader, pkg_name)
  File "/usr/lib/python2.7/runpy.py", line 72, in _run_code
    exec code in run_globals
  File "/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py", line 94, in <module>
    main()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/utils/bench_helper.py", line 18, in main
    click.Group(commands=commands)(prog_name='bench')
  File "/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 722, in __call__
    return self.main(*args, **kwargs)
  File "/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 697, in main
    rv = self.invoke(ctx)
  File "/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 1066, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 1066, in invoke
    return _process_result(sub_ctx.command.invoke(sub_ctx))
  File "/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 895, in invoke
    return ctx.invoke(self.callback, **ctx.params)
  File "/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/core.py", line 535, in invoke
    return callback(*args, **kwargs)
  File "/home/frappe/frappe-bench/env/local/lib/python2.7/site-packages/click/decorators.py", line 17, in new_func
    return f(get_current_context(), *args, **kwargs)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/commands/__init__.py", line 24, in _func
    ret = f(frappe._dict(ctx.obj), *args, **kwargs)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/commands/site.py", line 165, in install_app
    _install_app(app, verbose=context.verbose)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/installer.py", line 145, in install_app
    add_to_installed_apps(name)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/installer.py", line 166, in add_to_installed_apps
    post_install(rebuild_website)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/installer.py", line 230, in post_install
    init_singles()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/installer.py", line 251, in init_singles
    doc.save()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 256, in save
    return self._save(*args, **kwargs)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 279, in _save
    self.insert()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 207, in insert
    self._set_defaults()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 587, in _set_defaults
    new_doc = frappe.new_doc(df.options, as_dict=True)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/__init__.py", line 614, in new_doc
    return get_new_doc(doctype, parent_doc, parentfield, as_dict=as_dict)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/create_new.py", line 20, in get_new_doc
    frappe.local.new_doc_templates[doctype] = make_new_doc(doctype)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/create_new.py", line 41, in make_new_doc
    set_user_and_static_default_values(doc)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/create_new.py", line 56, in set_user_and_static_default_values
    user_default_value = get_user_default_value(df, defaults, user_permissions)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/create_new.py", line 71, in get_user_default_value
    if (frappe.get_meta(df.options).document_type=="Setup"
  File "/home/frappe/frappe-bench/apps/frappe/frappe/__init__.py", line 655, in get_meta
    return frappe.model.meta.get_meta(doctype, cached=cached)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/meta.py", line 33, in get_meta
    lambda: Meta(doctype))
  File "/home/frappe/frappe-bench/apps/frappe/frappe/utils/redis_wrapper.py", line 173, in hget
    value = generator()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/meta.py", line 33, in <lambda>
    lambda: Meta(doctype))
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/meta.py", line 72, in __init__
    super(Meta, self).__init__("DocType", doctype)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 103, in __init__
    self.load_from_db()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/meta.py", line 77, in load_from_db
    super(Meta, self).load_from_db()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/model/document.py", line 140, in load_from_db
    frappe.throw(_("{0} {1} not found").format(_(self.doctype), self.name), frappe.DoesNotExistError)
  File "/home/frappe/frappe-bench/apps/frappe/frappe/__init__.py", line 323, in throw
    msgprint(msg, raise_exception=exc, title=title, indicator='red')
  File "/home/frappe/frappe-bench/apps/frappe/frappe/__init__.py", line 309, in msgprint
    _raise_exception()
  File "/home/frappe/frappe-bench/apps/frappe/frappe/__init__.py", line 282, in _raise_exception
    raise raise_exception(encode(msg))
frappe.exceptions.DoesNotExistError: DocType Company not found

Seems like it needs python2.7 whereas Ubuntu 16.04 comes with python3.4, just a wild guess.

Cheers,
/z

Pulling Settings from System Singles Doctype

  • Fieldname "working_hours" from System Singles Doctype "Worker Sheet Settings" need to be copied to each new "Worker Sheet" created as working_hours".
  • This "working_hours" should added to each new row in "Worker Sheet Attendance" Child Table as "hours" by default

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.