Validación del RUT Chile mediante un custom script

Validación del RUT Chileno mediante un custom script, en el ejemplo el DocType: Tu_Doctype y el campo RUT en uid

//Validación RUT
frappe.ui.form.on("Tu_DocType", {
    validate: function(frm){
    var Fn = {
        validaRut : function (rutCompleto) {
        rutCompleto = frm.doc.uid.replace("‐","-");
        if (!/^[0-9]+[-|‐]{1}[0-9kK]{1}$/.test( rutCompleto ))
            return false;
        var tmp 	= rutCompleto.split('-');
        var digv	= tmp[1]; 
        var rut 	= tmp[0];
        if ( digv == 'K' ) digv = 'k' ;
        
        return (Fn.dv(rut) == digv );
    },
    dv : function(T){
        var M=0,S=1;
        for(;T;T=Math.floor(T/10))
            S=(S+T%10*(9-M++%6))%11;
        return S?S-1:'k';
    }
}
            if(frm.doc.uid){
            if (Fn.validaRut(frm.doc.uid)){
               return true
               validated = true
                 
            }else{
                validated = false;
                 msgprint('El RUT ingresado no es válido');
            }
        }
    }
});



2 Likes