Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //----------------------------------------------------------------------------------------------
- // ========== G L O B A L V A R I A B L E S
- var FISCAL_FILE_FULL_PATH = "c:\\tmp\\testing.txt";
- var ASK_FOR_FISCAL_FILE_EXP = "Must I generate a fiscal file for the saved invoice?";
- var FISCFILE_ERROR = "An error occured while trying to save the fiscal file. Perhaps you sould try once more, or an invalid path selected for ourput: ";
- //----------------------------------------------------------------------------------------------
- // ========== L I B R A R I E S
- String.prototype.LeadingZeros=function(count){var sLen=this.length;var lenDiff,prefix;var lzi=0;prefix="";lenDiff=count-sLen;for(lzi=0;lenDiff>lzi;lzi++){prefix+="0"}return(prefix+this.toString())};String.prototype.supplyArguments=function(){var tmpS,CanExit;var retVal=this;for(sAiEx=0,arglen=arguments.length;sAiEx<arglen;sAiEx++){CanExit=false;while(!CanExit){tmpS=retVal.replace("{"+sAiEx+"}",arguments[sAiEx].toString());if(tmpS==retVal){CanExit=true}else{retVal=tmpS}}}return retVal};Number.prototype.FPNumberFormat=function(digits){return parseFloat(Math.round(this*100)/100).toFixed(digits)};
- // ========== E N D L I B R A R I E S
- //----------------------------------------------------------------------------------------------
- function ON_AFTERPOST()
- {
- var sid;
- if(X.NEWID > 0)
- sid = X.NEWID;
- else
- sid = SALDOC.FINDOC;
- var answer = X.ASK("CAUTION - Confirmation!", ASK_FOR_FISCAL_FILE_EXP);
- if(answer == 6)
- _export_fiscal_file(sid);
- }
- //----------------------------------------------------------------------------------------------
- function _export_fiscal_file(sid)
- {
- var outs = "";
- var SQL, tmpDS;
- outs = "CLEAR;\r\nKEY REG;\r\n";
- SQL = ("select mt.name as item_name, round(mtl.qty1, 2) as qty1, " +
- "Round((mtl.LINEVAL / mtl.qty1), 2) as price " +
- "from mtrlines mtl " +
- "inner join mtrl mt on mt.mtrl = mtl.mtrl " +
- "where findoc = {0};")
- .supplyArguments(sid);
- tmpDS = X.GETSQLDATASET(SQL, null);
- if(tmpDS.Recordcount == 0) return;
- var tmp_qty, tmp_price;
- while(!tmpDS.Eof)
- {
- tmp_qty = new Number(tmpDS.qty1) * 1;
- tmp_qty = tmp_qty.FPNumberFormat(2).replace(",", ".");
- tmp_price = new Number(tmpDS.price) * 1;
- tmp_price = tmp_price.FPNumberFormat(2).replace(",", ".");
- //FPNumberFormat
- outs += ("SALE DPT=1,DES='{0}',QTY={1},PRICE={2};\r\n")
- .supplyArguments(tmpDS.item_name, tmp_qty, tmp_price);
- tmpDS.Next;
- }
- outs += "CLOSE TENDER=1";
- try
- {
- X.Tofile(FISCAL_FILE_FULL_PATH, outs);
- }
- catch(e)
- {
- X.Exception(FISCFILE_ERROR + e.description);
- }
- }
- //----------------------------------------------------------------------------------------------
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement