Skip to content

Instantly share code, notes, and snippets.

View ernestoruiz89's full-sized avatar
🎯
Focusing

Ernesto Ruiz ernestoruiz89

🎯
Focusing
View GitHub Profile
<h1>NICARAGUA</h1>
<svg style="width: 400px; height: 400px;" viewBox="0 0 550 550" class="land">
<g class="land1" id="land1">
<a xmlns:xlink="http://www.w3.org/1999/xlink" xlink:href="resdipnaci2.php?d=01">
<path id="NINS1" class="fn1 fn" onmouseover="toolTipBack2(this,'Nueva Segovia' );" d="M202.13,117.7L202.32,119.13L201.77,120.97L200.38,123.59L200.11,125.48L201.05,127.67L209.2,133.94L211.51,136.14L212.51,137.74L214.79,138.71L215.39,138.27L215.57,136.94L216.36,135.99L219.27,136.32L220.76,137.07L221.65,138.32L221.57,141.51L222.98,142.82L223.53,144.35L224.23,144.63L224.73,145.68L225.58,146.06L227.98,146.16L230.41,145.5L231.34,145.82L232.26,147.07L232.26,147.07L230.27,150.51L228.83,151.2L227.86,152.48L227.77,153.27L229.02,156.82L227.67,159.19L228.06,160.97L227.77,162.25L224.88,167.87L224.88,172.6L223.43,174.38L223.33,175.26L224.39,176.94L224.49,177.63L224.3,178.42L223.81,178.81L223.52,180.69L224.39,180.98L225.16,180.78L225.55,181.28L225.16,182.26L223.91,182.85L223.43,183.74L224.56,185.4L224.06,1
@ernestoruiz89
ernestoruiz89 / Add QR printing.html
Created May 10, 2024 23:10
Add QR printing.html
{% set data1 = doc.customer %}
{% set data2 = doc.name %}
{% set qr_code_data = data1 + " | " + data2 %}
<img src="https://api.qrserver.com/v1/create-qr-code/?data={{ qr_code_data | urlencode }}&amp;size=100x100" />
SELECT
'Income' AS `Type`,
gl.voucher_type AS `Document Type`,
gl.voucher_no AS `Document Number`,
gl.account AS `Account`,
SUM(gl.credit - gl.debit) AS `Amount`, -- Adjusted to show credit as positive
gl.remarks AS `Remarks`,
1 AS `Order`
FROM
`tabGL Entry` AS gl
SELECT
a.asset_category AS "Category:Data",
a.asset_name AS "Asset Name:Data",
a.name AS "Asset No.:Link/Asset",
a.purchase_date AS "Purchase Date:Date",
ROUND(a.gross_purchase_amount + IFNULL(ava.total_difference, 0), 2) AS "Gross Asset Amount:Float",
SUM(CASE WHEN MONTH(ds.schedule_date) = 1 AND YEAR(ds.schedule_date) = YEAR(%(cutoff_date)s) THEN ds.depreciation_amount ELSE 0 END) AS "January:Float",
SUM(CASE WHEN MONTH(ds.schedule_date) = 2 AND YEAR(ds.schedule_date) = YEAR(%(cutoff_date)s) THEN ds.depreciation_amount ELSE 0 END) AS "February:Float",
frappe.listview_settings['Journal Entry'] = {
refresh(list) {
frappe.breadcrumbs.clear();
frappe.breadcrumbs.set_custom_breadcrumbs({
route: "/app/support",
label: "Support"
});
@frappe.whitelist()
def import_coa_job(file_name, company):
# delete existing data for accounts
unset_existing_data(company)
# create accounts
file_doc, extension = get_file(file_name)
if extension == "csv":
data = generate_data_from_csv(file_doc)
frappe.ui.keys.add_shortcut({
shortcut: "shift+ctrl+d",
action: function () {
// navigate to ask doppio bot page
frappe.set_route("doppio-bot");
},
description: __("Ask DoppioBot"),
});
frappe.ui.form.on('Issue', {
refresh: function(frm) {
frm.fields_dict['sb_details'].wrapper.css('background-color', 'lightblue');
frm.fields_dict['section_break_19'].wrapper.css('background-color', 'gold');
}
@ernestoruiz89
ernestoruiz89 / dialog_promise.js
Created March 3, 2023 19:39 — forked from barredterra/dialog_promise.js
Comfortably work with dialogs in Frappe Framework
function dialog_promise (title, fields, primary_action_label) {
// Return a function that returns a promise
// The promise resolves when the dialog is submitted and rejects when the dialog is closed
// On resolve, the promise returns the values from the dialog.
return () => new Promise((resolve, reject) => {
const dialog = new frappe.ui.Dialog({
title: title,
fields: fields,
onhide: () => reject(),
primary_action_label: primary_action_label,
* Calcular la letra al final de la cédula nicaragüense.
* La letra se calcula con el siguiente algoritmo (SQL).
*
* declare @cedula varchar(20),
* @val numeric(13, 0),
* @letra char(1),
* @Letras varchar(20)
*
* select @Letras = 'ABCDEFGHJKLMNPQRSTUVWXY'
* select @cedula = '0012510750012' --PARTE NUMERICA DE LA CEDULA SIN GUIONES