コード例 #1
0
def get_columns(filters):
	columns = [_(filters.get("budget_against")) + ":Link/%s:80"%(filters.get("budget_against")), _("Account") + ":Link/Account:80"]

	group_months = False if filters["period"] == "Monthly" else True

	fiscal_year = get_fiscal_years(filters)

	for year in fiscal_year:
		for from_date, to_date in get_period_date_ranges(filters["period"], year[0]):
			if filters["period"] == "Yearly":
				labels = [_("Budget") + " " + str(year[0]), _("Actual ") + " " + str(year[0]), _("Varaiance ") + " " + str(year[0])]
				for label in labels:
					columns.append(label+":Float:80")
			else:
				for label in [_("Budget") + " (%s)" + " " + str(year[0]), _("Actual") + " (%s)" + " " + str(year[0]), _("Variance") + " (%s)" + " " + str(year[0])]:
					if group_months:
						label = label % (formatdate(from_date, format_string="MMM") + "-" + formatdate(to_date, format_string="MMM"))
					else:
						label = label % formatdate(from_date, format_string="MMM")

					columns.append(label+":Float:80")

	if filters["period"] != "Yearly" :
		return columns + [_("Total Budget") + ":Float:80", _("Total Actual") + ":Float:80",
			_("Total Variance") + ":Float:80"]
	else:
		return columns
コード例 #2
0
def get_columns(filters):
    for fieldname in ["fiscal_year", "period", "company"]:
        if not filters.get(fieldname):
            label = (" ".join(fieldname.split("_"))).title()
            msgprint(_("Please specify") + ": " + label, raise_exception=True)

    columns = [
        _("Cost Center") + ":Link/Cost Center:120",
        _("Account") + ":Link/Account:120"
    ]

    group_months = False if filters["period"] == "Monthly" else True

    for from_date, to_date in get_period_date_ranges(filters["period"],
                                                     filters["fiscal_year"]):
        for label in [
                _("Target") + " (%s)",
                _("Actual") + " (%s)",
                _("Variance") + " (%s)"
        ]:
            if group_months:
                label = label % (formatdate(from_date, format_string="MMM") +
                                 " - " +
                                 formatdate(from_date, format_string="MMM"))
            else:
                label = label % formatdate(from_date, format_string="MMM")

            columns.append(label + ":Float:120")

    return columns + [
        _("Total Target") + ":Float:120",
        _("Total Actual") + ":Float:120",
        _("Total Variance") + ":Float:120"
    ]
コード例 #3
0
def get_columns(filters):
    columns = [
        _(filters.get("budget_against")) + ":Link/%s:120" %
        (filters.get("budget_against")),
        _("Account") + ":Link/Account:120"
    ]

    group_months = False if filters["period"] == "Monthly" else True

    for from_date, to_date in get_period_date_ranges(filters["period"],
                                                     filters["fiscal_year"]):
        for label in [
                _("Target") + " (%s)",
                _("Actual") + " (%s)",
                _("Variance") + " (%s)"
        ]:
            if group_months:
                label = label % (formatdate(from_date, format_string="MMM") +
                                 " - " +
                                 formatdate(to_date, format_string="MMM"))
            else:
                label = label % formatdate(from_date, format_string="MMM")

            columns.append(label + ":Float:120")

    return columns + [
        _("Total Target") + ":Float:120",
        _("Total Actual") + ":Float:120",
        _("Total Variance") + ":Float:120"
    ]
def get_columns(filters):
    for fieldname in ["fiscal_year", "period", "target_on"]:
        if not filters.get(fieldname):
            label = (" ".join(fieldname.split("_"))).title()
            msgprint(_("Please specify") + ": " + _(label),
                     raise_exception=True)

    columns = [
        _("Territory") + ":Link/Territory:120",
        _("Item Group") + ":Link/Item Group:120"
    ]

    group_months = False if filters["period"] == "Monthly" else True

    for from_date, to_date in get_period_date_ranges(filters["period"],
                                                     filters["fiscal_year"]):
        for label in [
                _("Target") + " (%s)",
                _("Achieved") + " (%s)",
                _("Variance") + " (%s)"
        ]:
            if group_months:
                label = label % (_(from_date.strftime("%b")) + " - " +
                                 _(to_date.strftime("%b")))
            else:
                label = label % _(from_date.strftime("%b"))
            columns.append(label + ":Float:120")

    return columns + [
        _("Total Target") + ":Float:120",
        _("Total Achieved") + ":Float:120",
        _("Total Variance") + ":Float:120"
    ]
コード例 #5
0
def get_columns(filters):
	columns = [_(filters.get("budget_against")) + ":Link/%s:150"%(filters.get("budget_against")), _("Account") + ":Link/Account:150"]

	group_months = False if filters["period"] == "Monthly" else True

	fiscal_year = get_fiscal_years(filters)

	for year in fiscal_year:
		for from_date, to_date in get_period_date_ranges(filters["period"], year[0]):
			if filters["period"] == "Yearly":
				labels = [_("Budget") + " " + str(year[0]), _("Actual ") + " " + str(year[0]), _("Variance ") + " " + str(year[0])]
				for label in labels:
					columns.append(label+":Float:150")
			else:
				for label in [_("Budget") + " (%s)" + " " + str(year[0]), _("Actual") + " (%s)" + " " + str(year[0]), _("Variance") + " (%s)" + " " + str(year[0])]:
					if group_months:
						label = label % (formatdate(from_date, format_string="MMM") + "-" + formatdate(to_date, format_string="MMM"))
					else:
						label = label % formatdate(from_date, format_string="MMM")

					columns.append(label+":Float:150")

	if filters["period"] != "Yearly" :
		return columns + [_("Total Budget") + ":Float:150", _("Total Actual") + ":Float:150",
			_("Total Variance") + ":Float:150"]
	else:
		return columns
コード例 #6
0
def get_chart_data(filters, columns, data):

    if not data:
        return None

    labels = []

    fiscal_year = get_fiscal_years(filters)
    group_months = False if filters["period"] == "Monthly" else True

    for year in fiscal_year:
        for from_date, to_date in get_period_date_ranges(
                filters["period"], year[0]):
            if filters["period"] == "Yearly":
                labels.append(year[0])
            else:
                if group_months:
                    label = (formatdate(from_date, format_string="MMM") + "-" +
                             formatdate(to_date, format_string="MMM"))
                    labels.append(label)
                else:
                    label = formatdate(from_date, format_string="MMM")
                    labels.append(label)

    no_of_columns = len(labels)

    budget_values, actual_values = [0] * no_of_columns, [0] * no_of_columns
    for d in data:
        values = d[2:]
        index = 0

        for i in range(no_of_columns):
            budget_values[i] += values[index]
            actual_values[i] += values[index + 1]
            index += 3

    return {
        "data": {
            "labels":
            labels,
            "datasets": [
                {
                    "name": "Budget",
                    "chartType": "bar",
                    "values": budget_values
                },
                {
                    "name": "Actual Expense",
                    "chartType": "bar",
                    "values": actual_values
                },
            ],
        },
        "type": "bar",
    }
コード例 #7
0
def get_chart_data(filters, columns, data):

    if not data:
        return None

    labels = []

    fiscal_year = get_fiscal_years(filters)
    group_months = False if filters["period"] == "Monthly" else True

    for year in fiscal_year:
        for from_date, to_date in get_period_date_ranges(
                filters["period"], year[0]):
            if filters['period'] == 'Yearly':
                labels.append(year[0])
            else:
                if group_months:
                    label = formatdate(from_date, format_string="MMM") + "-" \
                     + formatdate(to_date, format_string="MMM")
                    labels.append(label)
                else:
                    label = formatdate(from_date, format_string="MMM")
                    labels.append(label)

    no_of_columns = len(labels)

    budget_values, actual_values = [0] * no_of_columns, [0] * no_of_columns
    for d in data:
        values = d[2:]
        index = 0

        for i in range(no_of_columns):
            budget_values[i] += values[index]
            actual_values[i] += values[index + 1]
            index += 3

    return {
        'data': {
            'labels':
            labels,
            'datasets': [{
                'name': 'Budget',
                'chartType': 'bar',
                'values': budget_values
            }, {
                'name': 'Actual Expense',
                'chartType': 'bar',
                'values': actual_values
            }]
        },
        'type': 'bar'
    }
コード例 #8
0
def get_columns(filters):
	columns = [_("Cost Center") + ":Link/Cost Center:120", _("Account") + ":Link/Account:120"]

	group_months = False if filters["period"] == "Monthly" else True

	for from_date, to_date in get_period_date_ranges(filters["period"], filters["fiscal_year"]):
		for label in [_("Target") + " (%s)", _("Actual") + " (%s)", _("Variance") + " (%s)"]:
			if group_months:
				label = label % (formatdate(from_date, format_string="MMM") + " - " + formatdate(to_date, format_string="MMM"))
			else:
				label = label % formatdate(from_date, format_string="MMM")

			columns.append(label+":Float:120")

	return columns + [_("Total Target") + ":Float:120", _("Total Actual") + ":Float:120",
		_("Total Variance") + ":Float:120"]
def get_columns(filters):
	for fieldname in ["fiscal_year", "period", "target_on"]:
		if not filters.get(fieldname):
			label = (" ".join(fieldname.split("_"))).title()
			msgprint(_("Please specify") + ": " + label, raise_exception=True)

	columns = [_("Territory") + ":Link/Territory:120", _("Item Group") + ":Link/Item Group:120"]

	group_months = False if filters["period"] == "Monthly" else True

	for from_date, to_date in get_period_date_ranges(filters["period"], filters["fiscal_year"]):
		for label in [_("Target") +" (%s)", _("Achieved") + " (%s)", _("Variance") + " (%s)"]:
			if group_months:
				label = label % (_(from_date.strftime("%b")) + " - " + _(to_date.strftime("%b")))
			else:
				label = label % _(from_date.strftime("%b"))
			columns.append(label+":Float:120")

	return columns + [_("Total Target") + ":Float:120", _("Total Achieved") + ":Float:120",
		_("Total Variance") + ":Float:120"]
コード例 #10
0
def get_columns(filters):
	for fieldname in ["fiscal_year", "period", "company"]:
		if not filters.get(fieldname):
			label = (" ".join(fieldname.split("_"))).title()
			msgprint(_("Please specify") + ": " + label,
				raise_exception=True)

	columns = [_("Cost Center") + ":Link/Cost Center:120", _("Account") + ":Link/Account:120"]

	group_months = False if filters["period"] == "Monthly" else True

	for from_date, to_date in get_period_date_ranges(filters["period"], filters["fiscal_year"]):
		for label in [_("Target") + " (%s)", _("Actual") + " (%s)", _("Variance") + " (%s)"]:
			if group_months:
				label = label % (formatdate(from_date, format_string="MMM") + " - " + formatdate(from_date, format_string="MMM"))
			else:
				label = label % formatdate(from_date, format_string="MMM")

			columns.append(label+":Float:120")

	return columns + [_("Total Target") + ":Float:120", _("Total Actual") + ":Float:120",
		_("Total Variance") + ":Float:120"]
コード例 #11
0
def get_columns(filters):
	for fieldname in ["fiscal_year", "period", "target_on"]:
		if not filters.get(fieldname):
			label = (" ".join(fieldname.split("_"))).title()
			msgprint(_("Please specify") + ": " + label,
				raise_exception=True)

	columns = ["Sales Person:Link/Sales Person:120", "Item Group:Link/Item Group:120"]

	group_months = False if filters["period"] == "Monthly" else True

	for from_date, to_date in get_period_date_ranges(filters["period"], filters["fiscal_year"]):
		for label in ["Target (%s)", "Achieved (%s)", "Variance (%s)"]:
			if group_months:
				label = label % (from_date.strftime("%b") + " - " + to_date.strftime("%b"))
			else:
				label = label % from_date.strftime("%b")
			
			columns.append(label+":Float:120")

	return columns + ["Total Target:Float:120", "Total Achieved:Float:120", 
		"Total Variance:Float:120"]
コード例 #12
0
def get_columns(filters):
    columns = [{
        'label': _(filters.get("budget_against")),
        'fieldtype': 'Link',
        'fieldname': 'budget_against',
        'options': filters.get('budget_against'),
        'width': 150
    }, {
        'label': _('Account'),
        'fieldname': 'Account',
        'fieldtype': 'Link',
        'options': 'Account',
        'width': 150
    }]

    group_months = False if filters["period"] == "Monthly" else True

    fiscal_year = get_fiscal_years(filters)

    for year in fiscal_year:
        for from_date, to_date in get_period_date_ranges(
                filters["period"], year[0]):
            if filters["period"] == "Yearly":
                labels = [
                    _("Budget") + " " + str(year[0]),
                    _("Actual ") + " " + str(year[0]),
                    _("Variance ") + " " + str(year[0])
                ]
                for label in labels:
                    columns.append({
                        'label': label,
                        'fieldtype': 'Float',
                        'fieldname': frappe.scrub(label),
                        'width': 150
                    })
            else:
                for label in [
                        _("Budget") + " (%s)" + " " + str(year[0]),
                        _("Actual") + " (%s)" + " " + str(year[0]),
                        _("Variance") + " (%s)" + " " + str(year[0])
                ]:
                    if group_months:
                        label = label % (
                            formatdate(from_date, format_string="MMM") + "-" +
                            formatdate(to_date, format_string="MMM"))
                    else:
                        label = label % formatdate(from_date,
                                                   format_string="MMM")

                    columns.append({
                        'label': label,
                        'fieldtype': 'Float',
                        'fieldname': frappe.scrub(label),
                        'width': 150
                    })

    if filters["period"] != "Yearly":
        for label in [
                _("Total Budget"),
                _("Total Actual"),
                _("Total Variance")
        ]:
            columns.append({
                'label': label,
                'fieldtype': 'Float',
                'fieldname': frappe.scrub(label),
                'width': 150
            })

        return columns
    else:
        return columns
コード例 #13
0
def get_columns(filters):
    columns = [
        {
            "label": _(filters.get("budget_against")),
            "fieldtype": "Link",
            "fieldname": "budget_against",
            "options": filters.get("budget_against"),
            "width": 150,
        },
        {
            "label": _("Account"),
            "fieldname": "Account",
            "fieldtype": "Link",
            "options": "Account",
            "width": 150,
        },
    ]

    group_months = False if filters["period"] == "Monthly" else True

    fiscal_year = get_fiscal_years(filters)

    for year in fiscal_year:
        for from_date, to_date in get_period_date_ranges(
                filters["period"], year[0]):
            if filters["period"] == "Yearly":
                labels = [
                    _("Budget") + " " + str(year[0]),
                    _("Actual ") + " " + str(year[0]),
                    _("Variance ") + " " + str(year[0]),
                ]
                for label in labels:
                    columns.append({
                        "label": label,
                        "fieldtype": "Float",
                        "fieldname": frappe.scrub(label),
                        "width": 150
                    })
            else:
                for label in [
                        _("Budget") + " (%s)" + " " + str(year[0]),
                        _("Actual") + " (%s)" + " " + str(year[0]),
                        _("Variance") + " (%s)" + " " + str(year[0]),
                ]:
                    if group_months:
                        label = label % (
                            formatdate(from_date, format_string="MMM") + "-" +
                            formatdate(to_date, format_string="MMM"))
                    else:
                        label = label % formatdate(from_date,
                                                   format_string="MMM")

                    columns.append({
                        "label": label,
                        "fieldtype": "Float",
                        "fieldname": frappe.scrub(label),
                        "width": 150
                    })

    if filters["period"] != "Yearly":
        for label in [
                _("Total Budget"),
                _("Total Actual"),
                _("Total Variance")
        ]:
            columns.append({
                "label": label,
                "fieldtype": "Float",
                "fieldname": frappe.scrub(label),
                "width": 150
            })

        return columns
    else:
        return columns