01.09.2023 tarihli e-Belge uygulamalarında düzenlenen belgeler için "Karekod" basımı 9.0.49.1 patch dosyaları ile desteklenmiştir.
Taslak oluşturma sırasında dizayn seçmeden yapılan basımlarda (Kodun içine gömülü dizaynlarda) Karekod basımı ilgili patch dosyaları ile desteklenmiştir. Ayrıca güncelleme sonrasında Temelset dizini altında Xslt klasöründe varsayılan xslt dosyalarında da güncelleme yapılmıştır. Xslt klasörü içinde, e-Fatura için general.xslt, e-Arşiv için arsiv.xslt, e-İrsaliye için irsaliye.xslt ve e-Müstahsil için müstahsil.xslt dosyaları içinde Karekod' u basan ilgili kod blokları yer almaktadır.
Özel dizayn kullanımı durumunda, xslt dosyalarına aşağıdaki kod bloklarının eklenmesiyke Karekod basımı set bağımsız olarak yapalabilecektir.
Örneğin e-Fatura belgelerinde Karekod basımı için 2 adet kod bloğu bulunmaktadır.
- kod bloğu head ile style arasına konmalıdır.
<![CDATA[var QRCode;!function(){function a(a){this.mode=c.MODE_8BIT_BYTE,this.data=a,this.parsedData=[]; for(var b=[],d=0,e=this.data.length;e>d;d++){var f=this.data.charCodeAt(d);f>65536?(b[0]=240|(1835008&f)>>>18, b[1]=128|(258048&f)>>>12,b[2]=128|(4032&f)>>>6,b[3]=128|63&f):f>2048?(b[0]=2 24|(61440&f)>>>12,b[1]=128|(4032&f)>>>6, b[2]=128|63&f):f>128?(b[0]=192|(1984&f)>>>6, b[1]=128|63&f):b[0]=f,this.parsedData=this.parsedData.concat(b)} this.dataList=[]}function c=0;c<a.length&&0==a[c];)c++; c;d++)this.num[d]=a[d+c]}function function k(){this.buffer=[],this.length=0}function m(){return"undefined"!=typeof ([0-9]\.[0-9])/i),aMat&&aMat[1]&&(a=parseFloat(aMat[1]))),a}function r(a,b){for(var c=1,e=s(a),f=0,g=l.length;g>=f;f++){var h=0;switch(b){case d.L:h=l[f][0];break;case d.M:h=l[f][1];break;case d.Q:h=l[f][2];break;case d.H:h=l[f][3]}if(h>=e)break;c++}if(c>l.length)throw new Error("Too long data");return c}function s(a){var b=encodeURI(a).toString().replace(/%[0-9a-fA-F]{2}/g,"a");return b=0,c=this.parsedData.length;c>b;b++)a.put(this.parsedData[b],8)}},b.prototype={addData:funct ion(b){var c=new this.modules[a][b]},getModuleCount:function(){return Array(this.moduleCount);for(var d=0;d<this.moduleCount;d++){this.modules[d]=new e=0;e<this.moduleCount;e++)this.modules[d][e]=null}this.setupPositionProbePattern(0,0),this.s 1>=b+d||this.moduleCount<=b+d||(this.modules[a+c][b+d]=c>=0&&6>=c&&(0==d||6==d)||d> g=f*e,h=0;h<this.modules[f].length;h++){var i=h*e,j=this.modules[f][h];j&&(d.beginFill(0,100),d.moveTo(i,g),d.lineTo(i+e,g),d.lineTo(i+e,g+e), a=8;a<this.moduleCount-8;a++)null==this.modules[a][6]&&(this.modules[a][6]=0==a%2);for(var 8;b+)null==this.modules[6][b]&&(this.modules[6][b]=0==b%2)},setupPositionAdjustPattern:fun ction(){for(var a=f.getPatternPosition(this.typeNumber),b=0;b<a.length;b+)for(var c=0;c<a.length;c+){var d=a[b],e=a[c];if(null==this.modules[d][e])for(var g=-2;2>=g;g+)for(var h=2;2>=h;h++)this.modules[d+g][e+h]=-2==g||2==g|| d=!a&&1==(1&b>>c);this.modules[Math.floor(c/3)][c%3+this.moduleCount-8-3]=d}for(var c=0;18>c;c++){var d=!a&&1==(1&b>>c);this.modules[c%3+this.moduleCount-8- 3][Math.floor(c/3)]=d}},setupTypeInfo:function(a,b){for(var g=!a&&1==(1&d>>e);6>e?this.modules[e][8]=g:8>e?this.modules[e+1][8]=g:this.modules[this.m oduleCount-15+e][8]=g}for(var e=0;15>e;e++){var g=!a&&1==(1&d>>e);8>e?this.modules[8][this.moduleCount-e-1]=g:9>e?this.modules[8][15-e- 1+1]=g:this.modules[8][15-e-1]=g}this.modules[this.moduleCount- 8][8]=!a},mapData:function(a,b){for(var c=1,d=this.moduleCount i=0;2>i;i++)if(null==this.modules[d][h-i]){var j=!1;g<a.length&&(j=1==(1&a[g]>>>e));var k=f.getMask(b,d,h-i);k&&(j=!j),this.modules[d][h-i]=j,e-, i=d[h];g.put(i.mode,4),g.put(i.getLength(),f.getLengthInBits(i.mode,a)),i.write(g)}for(var l=0,h=0;h<e.length;h+)l=e[h].dataCount;if(g.getLengthInBits()>8*l)throw new Error("code k=b[j].dataCount,l=b[j].totalCount-k;d=Math.max(d,k),e=Math.max(e,l),g[j]=new Array(k);for(var m=0;m<g[j].length;m+)g[j][m]=255&a.buffer[m+c];c=k;var n=f.getErrorCorrectPolynomial(l),o=new i(g[j],n.getLength()-1),p=o.mod;h[j]=new Array(n.getLength()1);for(var m=0;m<h[j].length;m++){var q=m+p.getLength() h[j].length;h[j][m]=q>=0?p.get(q):0}}for(var r=0,m=0;m<b.length;m+)r=b[m].totalCount;for(var s=new Array(r),t=0,m=0;d>m;m++)for(var j=0;j<b.length;j+)m<g[j].length&&(s[t]=g[j][m]);for(var m=0;e>m;m+)for(var j=0;j<b.length;j+)m<h[j].length&&(s[t+]=h[j][m]);return s};for(var N101:5,PATTERN110:6,PATTERN111:7},f={PATTERN_POSITION_TABLE:[[],[6,18],[6,22],[6,26],[6, 30],[6,34],[6,22,38],[6,24,42],[6,26,46],[6,28,50],[6,30,54],[6,32,58],[6,34,62],[6,26,46,66],[6,26, 48,70],[6,26,50,74],[6,30,54,78],[6,30,56,82],[6,30,58,86],[6,34,62,90],[6,28,50,72,94],[6,26,50,7 4,98],[6,30,54,78,102],[6,28,54,80,106],[6,32,58,84,110],[6,30,58,86,114],[6,34,62,90,118],[6,26 ,50,74,98,122],[6,30,54,78,102,126],[6,26,52,78,104,130],[6,30,56,82,108,134],[6,34,60,86,112, 138],[6,30,58,86,114,142],[6,34,62,90,118,146],[6,30,54,78,102,126,150],[6,24,50,76,102,128,1 54],[6,28,54,80,106,132,158],[6,32,58,84,110,136,162],[6,26,54,82,110,138,166],[6,30,58,86,11 f.PATTERN_POSITION_TABLE[a-1]},getMask:function(a,b,c){switch(a){case i([1],0),c=0;a>c;c++)b=b.multiply(new i([1,g.gexp(c)],0));return g.LOG_TABLE[a]},gexp:function(a){for(;0>a;)a+=255;for(;a>=256;)a-=255;return g.EXP_TABLE[a]},EXP_TABLE:new Array(256)},h=0;8>h;h++)g.EXP_TABLE[h]=1<<h;for(var h=8;256>h;h++)g.EXP_TABLE[h]=g.EXP_TABLE[h-4]^g.EXP_TABLE[h-5]^g.EXP_TABLE[h- 6]^g.EXP_TABLE[h-8];for(var h=0;255>h;h++)g.LOG_TABLE[g.EXP_TABLE[h]]=h;i.prototype={get:function(a){return this.num[a]},getLength:function(){return this.num.length},multiply:function(a){for(var b=new d=0;d<a.getLength();d++)b[c+d]^=g.gexp(g.glog(this.get(c))+g.glog(a.get(d)));return new Array(this.getLength()),d=0;d<this.getLength();d++)c[d]=this.get(d);for(var d=0;d<a.getLength();d++)c[d]^=g.gexp(g.glog(a.get(d))+b);return new i(c,0).mod(a)}},j.RS_BLOCK_TABLE=[[1,26,19],[1,26,16],[1,26,13],[1,26,9],[1,44,34],[1,44,28],[1,4 4,22],[1,44,16],[1,70,55],[1,70,44],[2,35,17],[2,35,13],[1,100,80],[2,50,32],[2,50,24],[4,25,9],[1,1 34,108],[2,67,43],[2,33,15,2,34,16],[2,33,11,2,34,12],[2,86,68],[4,43,27],[4,43,19],[4,43,15],[2,9 8,78],[4,49,31],[2,32,14,4,33,15],[4,39,13,1,40,14],[2,121,97],[2,60,38,2,61,39],[4,40,18,2,41,19] ,[4,40,14,2,41,15],[2,146,116],[3,58,36,2,59,37],[4,36,16,4,37,17],[4,36,12,4,37,13],[2,86,68,2,8 7,69],[4,69,43,1,70,44],[6,43,19,2,44,20],[6,43,15,2,44,16],[4,101,81],[1,80,50,4,81,51],[4,50,22, 4,51,23],[3,36,12,8,37,13],[2,116,92,2,117,93],[6,58,36,2,59,37],[4,46,20,6,47,21],[7,42,14,4,43, 15],[4,133,107],[8,59,37,1,60,38],[8,44,20,4,45,21],[12,33,11,4,34,12],[3,145,115,1,146,116],[4, 64,40,5,65,41],[11,36,16,5,37,17],[11,36,12,5,37,13],[5,109,87,1,110,88],[5,65,41,5,66,42],[5,54, 24,7,55,25],[11,36,12],[5,122,98,1,123,99],[7,73,45,3,74,46],[15,43,19,2,44,20],[3,45,15,13,46,1 6],[1,135,107,5,136,108],[10,74,46,1,75,47],[1,50,22,15,51,23],[2,42,14,17,43,15],[5,150,120,1, 151,121],[9,69,43,4,70,44],[17,50,22,1,51,23],[2,42,14,19,43,15],[3,141,113,4,142,114],[3,70,44 ,11,71,45],[17,47,21,4,48,22],[9,39,13,16,40,14],[3,135,107,5,136,108],[3,67,41,13,68,42],[15,5 4,24,5,55,25],[15,43,15,10,44,16],[4,144,116,4,145,117],[17,68,42],[17,50,22,6,51,23],[19,46,16 ,6,47,17],[2,139,111,7,140,112],[17,74,46],[7,54,24,16,55,25],[34,37,13],[4,151,121,5,152,122],[ 4,75,47,14,76,48],[11,54,24,14,55,25],[16,45,15,14,46,16],[6,147,117,4,148,118],[6,73,45,14,74, 46],[11,54,24,16,55,25],[30,46,16,2,47,17],[8,132,106,4,133,107],[8,75,47,13,76,48],[7,54,24,22 ,55,25],[22,45,15,13,46,16],[10,142,114,2,143,115],[19,74,46,4,75,47],[28,50,22,6,51,23],[33,46 ,16,4,47,17],[8,152,122,4,153,123],[22,73,45,3,74,46],[8,53,23,26,54,24],[12,45,15,28,46,16],[3, 147,117,10,148,118],[3,73,45,23,74,46],[4,54,24,31,55,25],[11,45,15,31,46,16],[7,146,116,7,147 ,117],[21,73,45,7,74,46],[1,53,23,37,54,24],[19,45,15,26,46,16],[5,145,115,10,146,116],[19,75,4 7,10,76,48],[15,54,24,25,55,25],[23,45,15,25,46,16],[13,145,115,3,146,116],[2,74,46,29,75,47],[ 42,54,24,1,55,25],[23,45,15,28,46,16],[17,145,115],[10,74,46,23,75,47],[10,54,24,35,55,25],[19, 45,15,35,46,16],[17,145,115,1,146,116],[14,74,46,21,75,47],[29,54,24,19,55,25],[11,45,15,46,46 ,16],[13,145,115,6,146,116],[14,74,46,23,75,47],[44,54,24,7,55,25],[59,46,16,1,47,17],[12,151,1 21,7,152,122],[12,75,47,26,76,48],[39,54,24,14,55,25],[22,45,15,41,46,16],[6,151,121,14,152,12 2],[6,75,47,34,76,48],[46,54,24,10,55,25],[2,45,15,64,46,16],[17,152,122,4,153,123],[29,74,46,1 4,75,47],[49,54,24,10,55,25],[24,45,15,46,46,16],[4,152,122,18,153,123],[13,74,46,32,75,47],[4 8,54,24,14,55,25],[42,45,15,32,46,16],[20,147,117,4,148,118],[40,75,47,7,76,48],[43,54,24,22,5 5,25],[10,45,15,67,46,16],[19,148,118,6,149,119],[18,75,47,31,76,48],[34,54,24,34,55,25],[20,4 d=c.length/3,e=[],f=0;d>f;f+)for(var g=c[3*f+0],h=c[3*f+1],i=c[3*f+2],k=0;g>k;k+)e.push(new j.RS_BLOCK_TABLE[4*(a-1)+0];case d.M:return j.RS_BLOCK_TABLE[4*(a-1)+1];case d.Q:return j.RS_BLOCK_TABLE[4*(a-1)+2];case d.H:return j.RS_BLOCK_TABLE[4*(a-1)+3];default:return void 0}},k.prototype={get:function(a){var b=Math.floor(a/8);return 1==(1&this.buffer[b]>>>7- b=Math.floor(this.length/8);this.buffer.length<=b&&this.buffer.push(0),a&&(this.buffer[b]|=12 l=[[17,14,11,7],[32,26,20,14],[53,42,32,24],[78,62,46,34],[106,84,60,44],[134,106,74,58],[154,12 2,86,64],[192,152,108,84],[230,180,130,98],[271,213,151,119],[321,251,177,137],[367,287,203, 155],[425,331,241,177],[458,362,258,194],[520,412,292,220],[586,450,322,250],[644,504,364,2 80],[718,560,394,310],[792,624,442,338],[858,666,482,382],[929,711,509,403],[1003,779,565,4 39],[1091,857,611,461],[1171,911,661,511],[1273,997,715,535],[1367,1059,751,593],[1465,112 5,805,625],[1528,1190,868,658],[1628,1264,908,698],[1732,1370,982,742],[1840,1452,1030,79 0],[1952,1538,1112,842],[2068,1628,1168,898],[2188,1722,1228,958],[2303,1809,1283,983],[2 431,1911,1351,1051],[2563,1989,1423,1093],[2699,2099,1499,1139],[2809,2213,1579,1219],[2 b)b.hasOwnProperty(d)&&c.setAttribute(d,b[d]);return c}var )arguments[l]=arguments[l]*b;else"undefined"==typeof j&&(arguments[1]=b,arguments[2]=b,arguments[3]=b,arguments[4]=b);c.apply(this,argum b=this._htOption,c=this._el,d=a.getModuleCount(),e=Math.floor(b.width/d),f=Math.floor(b.heig ht/d),g=['<table style="border:0;border- color:"(a.isDark(h,i)?b.colorDark:b.colorLight)';"></td>');g.push("</tr>")}g.push("</table>"),c.i nnerHTML=g.join("");var j=c.childNodes[0],k=(b.width-j.offsetWidth)/2,l=(b.height- this._htOption[c]=b[c];"string"==typeof a&&(a=document.getElementById(a)),
<script type="text/javascript">
Tarih:14/08/2023
Konu: e-Belgelerde Karekod Basım Desteği
this.parsedData.length!=this.data.length&&(this.parsedData.unshift(191),this.parsed Data.unshift(187),
this.parsedData.unshift(239))}function b(a,b){this.typeNumber=a,this.errorCorrectLevel=b,this.modules=null,this.moduleCount=0,this. dataCache=null,
this.num=new Array(a.length-c+b);for(var d=0;d<a.length-
Tarih:14/08/2023
Konu: e-Belgelerde Karekod Basım Desteği
=0&&6>=d&&(0==c||6==c)||c>=2&&4>=c&&d>=2&&4>=d?!0:!1)},getBestMaskPattern:functio n(){for(var a=0,b=0,c=0;8>c;c++){this.makeImpl(!0,c);var d=f.getLostPoint(this);(0==c||a>d)&&(a=d,b=c)}return b},createMovieClip:function(a,b,c){var d=a.createEmptyMovieClip(b,c),e=1;this.make();for(var f=0;f<this.modules.length;f++)for(var
Tarih:14/08/2023
Konu: e-Belgelerde Karekod Basım Desteği
:3,H:2},e={PATTERN000:0,PATTERN001:1,PATTERN010:2,PATTERN011:3,PATTERN100:4,PATTER
4,142,170]],G15:1335,G18:7973,G15_MASK:21522,getBCHTypeInfo:function(a){for(var b=a<<10;f.getBCHDigit(b)f.getBCHDigit(f.G15)>=0;)b^=f.G15<<f.getBCHDigit(b) f.getBCHDigit(f.G15);return(a<<10|b)^f.G15_MASK},getBCHTypeNumber:function(a){for(var b=a<<12;f.getBCHDigit(b)f.getBCHDigit(f.G18)>=0;)b^=f.G18<<f.getBCHDigit(b) f.getBCHDigit(f.G18);return a<<12|b},getBCHDigit:function(a){for(var b=0;0!=a;)b++,a>>>=1;return b},getPatternPosition:function(a){return
Tarih:14/08/2023
Konu: e-Belgelerde Karekod Basım Desteği
c.MODE_NUMBER:return 14;case c.MODE_ALPHA_NUM:return 13;case c.MODE_8BIT_BYTE:return 16;case c.MODE_KANJI:return 12;default:throw new Error("mode:"+a)}}},getLostPoint:function(a){for(var b=a.getModuleCount(),c=0,d=0;b>d;d+)for(var e=0;b>e;e+){for(var f=0,g=a.isDark(d,e),h=- 1;1>=h;h++)if(!(0>d+h||d+h>=b))for(var i=- 1;1>=i;i+)0>e+i||e+i>=b||(0!=h||0!=i)&&g==a.isDark(d+h,e+i)&&f;f>5&&(c=3+f-5)}for(var d=0;b-1>d;d+)for(var e=0;b-1>e;e+){var j=0;a.isDark(d,e)&&j+,a.isDark(d+1,e)&&j,a.isDark(d,e+1)&&j,a.isDark(d+1,e+1)&&j+,(0=
=j||4==j)&&(c+=3)}for(var d=0;b>d;d++)for(var e=0;b- 6>e;e+)a.isDark(d,e)&&!a.isDark(d,e+1)&&a.isDark(d,e+2)&&a.isDark(d,e+3)&&a.isDark(d,e+4) &&!a.isDark(d,e+5)&&a.isDark(d,e+6)&&(c=40);for(var e=0;b>e;e++)for(var d=0;b- 6>d;d+)a.isDark(d,e)&&!a.isDark(d+1,e)&&a.isDark(d+2,e)&&a.isDark(d+3,e)&&a.isDark(d+4,e) &&!a.isDark(d+5,e)&&a.isDark(d+6,e)&&(c=40);for(var k=0,e=0;b>e;e++)for(var d=0;b>d;d+)a.isDark(d,e)&&k+;var l=Math.abs(100*k/b/b-50)/5;return c+=10*l}},g={glog:function(a){if(1>a)throw new Error("glog("a")");return
Tarih:14/08/2023
Konu: e-Belgelerde Karekod Basım Desteği
5,15,61,46,16]],j.getRSBlocks=function(a,b){var c=j.getRsBlockTable(a,b);if(void 0==c)throw new Error("bad rs block @ typeNumber:"a"/errorCorrectLevel:"+b);for(var
Tarih:14/08/2023
Konu: e-Belgelerde Karekod Basım Desteği
953,2331,1663,1273]],o=function(){var a=function(a,b){this._el=a,this._htOption=b};return a.prototype.draw=function(a){function g(a,b){var c=document.createElementNS("http://www.w3.org/2000/svg",a);for(var d in
),this.clear();var h=g("svg",{viewBox:"0 0 "String(d)" "+String(d),width:"100%",height:"100%",fill:b.colorLight});h.setAttributeNS("http://www.w3.org
/2000/xmlns/","xmlns:xlink","http://www.w3.org/1999/xlink"),c.appendChild(h),h.appendChild( g("rect",{fill:b.colorDark,width:"1",height:"1",id:"template"}));for(var i=0;d>i;i++)for(var j=0;d>j;j++)if(a.isDark(i,j)){var k=g("use",{x:String,y:String(j)});k.setAttributeNS("http://www.w3.org/1999/xlink","href","#te mplate"),h.appendChild(k)}},a.prototype.clear=function(){for(;this._el.hasChildNodes();)this._el. removeChild(this._el.lastChild)},a}(),p="svg"===document.documentElement.tagName.toLower Case(),q=p?o:m()?function(){function a(){this._elImage.src=this._elCanvas.toDataURL("image/png"),this._elImage.style.display="block ",this._elCanvas.style.display="none"}function d(a,b){var c=this;if(c._fFail=b,c._fSuccess=a,null===c._bSupportDataURI){var d=document.createElement("img"),e=function(){c._bSupportDataURI=!1,c._fFail&&_fFail.call(c)}
,f=function(){c._bSupportDataURI=!0,c._fSuccess&&c._fSuccess.call(c)};return d.onabort=e,d.onerror=e,d.onload=f,d.src="data:image/gif;base64,iVBORw0KGgoAAAANSUhEU gAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4O
HwAAAABJRU5ErkJggg==",void 0}c._bSupportDataURI===!0&&c._fSuccess?c._fSuccess.call(c):c._bSupportDataURI===!1&&c._f Fail&&c._fFail.call(c)}if(this._android&&this._android<=2.1){var b=1/window.devicePixelRatio,c=CanvasRenderingContext2D.prototype.drawImage;CanvasRend eringContext2D.prototype.drawImage=function(a,d,e,f,g,h,i,j){if("nodeName"in a&&/img/i.test(a.nodeName))for(var l=arguments.length-1;l>=1;l--
Tarih:14/08/2023
Konu: e-Belgelerde Karekod Basım Desteği
_el.appendChild(this._elImage),this._bSupportDataURI=null};return e.prototype.draw=function(a){var b=this._elImage,c=this._oContext,d=this._htOption,e=a.getModuleCount(),f=d.width/e,g=d.heig ht/e,h=Math.round(f),i=Math.round(g);b.style.display="none",this.clear();for(var j=0;e>j;j+)for(var k=0;e>k;k+){var l=a.isDark(j,k),m=k*f,n=j*g;c.strokeStyle=l?d.colorDark:d.colorLight,c.lineWidth=1,c.fillStyle=l?d. colorDark:d.colorLight,c.fillRect(m,n,f,g),c.strokeRect(Math.floor(m).5,Math.floor.5,h,i),c.st rokeRect(Math.ceil(m).5,Math.ceil
.5,h,i)}this._bIsPainted=!0},e.prototype.makeImage=function(){this._bIsPainted&&d.call(this,a)}, e.prototype.isPainted=function(){return this._bIsPainted},e.prototype.clear=function(){this._oContext.clearRect(0,0,this._elCanvas.width
,this._elCanvas.height),this._bIsPainted=!1},e.prototype.round=function(a){return a?Math.floor(1e3*a)/1e3:a},e}():function(){var a=function(a,b){this._el=a,this._htOption=b};return a.prototype.draw=function(a){for(var
this._oQRCode=null,this._oDrawing=new q(this._el,this._htOption),this._htOption.text&&this.makeCode(this._htOption.text)},
QRCode.prototype.makeCode=function(a){this._oQRCode=new b(r(a,this._htOption.correctLevel),this._htOption.correctLevel),
this._oQRCode.addData(a),this._oQRCode.make(),this._el.title=a,this._oDrawing.dra w(this._oQRCode),this.makeImage()},
QRCode.prototype.makeImage=function(){"function"==typeof this._oDrawing.makeImage&&(!this._android||this._android>=3)&&this._oDrawing.makeImage ()},
Tarih:14/08/2023
Konu: e-Belgelerde Karekod Basım Desteği
;]]>
QRCode.prototype.clear=function(){this._oDrawing.clear()},QRCode.CorrectLevel=d}()
</script>
- kod bloğu ise, karekodun çıkacağı yere kopyalanması gerekmektedir. Karekod mevzuata göre sağ üstte yer almalıdır. Basım yapılacak yere göre xsltye aşağıdaki kod bloğu kopyalanmalıdır. İlgili kod bloğu aşağıda yer almaktadır.
select="n1:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PartyIdentification/cbc:ID[@schemeID = select="n1:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PartyIdentification/cbc:ID[@schemeID = select="n1:Invoice/cac:TaxTotal/cac:TaxSubtotal[cac:TaxCategory/cac:TaxScheme/cbc:TaxTypeCode = select="n1:Invoice/cac:TaxTotal/cac:TaxSubtotal[cac:TaxCategory/cac:TaxScheme/cbc:TaxTypeCode = select="n1:Invoice/cac:AccountingSupplierParty/cac:Party/cac:PartyIdentification/cbc:ID[@schemeID = select="n1:Invoice/cac:AccountingCustomerParty/cac:Party/cac:PartyIdentification/cbc:ID[@schemeID = select="n1:Invoice/cac:TaxTotal/cac:TaxSubtotal[cac:TaxCategory/cac:TaxScheme/cbc:TaxTypeCode = select="n1:Invoice/cac:TaxTotal/cac:TaxSubtotal[cac:TaxCategory/cac:TaxScheme/cbc:TaxTypeCode = select="n1:DespatchAdvice/cac:DespatchSupplierParty/cac:Party/cac:PartyIdentification/cbc:ID[@schem eID select="n1:DespatchAdvice/cac:DeliveryCustomerParty/cac:Party/cac:PartyIdentification/cbc:ID[@sche meID = select="n1:CreditNote/cac:AccountingSupplierParty/cac:Party/cac:PartyIdentification/cbc:ID[@schemeI D = 'TCKN' select="n1:CreditNote/cac:AccountingCustomerParty/cac:Party/cac:PartyIdentification/cbc:ID[@scheme ID = 'TCKN' select="n1:CreditNote/cac:TaxTotal/cac:TaxSubtotal[cac:TaxCategory/cac:TaxScheme/cbc:TaxTypeCode select="n1:CreditNote/cac:TaxTotal/cac:TaxSubtotal[cac:TaxCategory/cac:TaxScheme/cbc:TaxTypeCode select="n1:CreditNote/cac:TaxTotal/cac:TaxSubtotal[cac:TaxCategory/cac:TaxScheme/cbc:TaxTypeCode select="n1:CreditNote/cac:TaxTotal/cac:TaxSubtotal[cac:TaxCategory/cac:TaxScheme/cbc:TaxTypeCode
Not !!! Bu kod bloğu e-Fatura belgeleri için kullanılmaktadır. E-Arşiv, e-İrsaliye ve e-Müstahsil belgelerinde farklılık göstermektedir. E-Arşiv, e-İrsaliye, e-Müstahsil belgeleri için 2. Kod blokları dokümanın sonunda yer almaktadır.
<td width="40%" align="center" valign="middle" >
<div id="qrcode"/>
<div id="qrvalue" style="vissibility: hidden; height: 30px;width: 30px; display:none">
{
"vkntckn":"<xsl:value-of
"avkntckn":"<xsl:value-of
Tarih:14/08/2023
Konu: e-Belgelerde Karekod Basım Desteği
"senaryo":"<xsl:value-of select="n1:Invoice/cbc:ProfileID"/>", "tip":"<xsl:value-of select="n1:Invoice/cbc:InvoiceTypeCode"/>", "tarih":"<xsl:value-of select="n1:Invoice/cbc:IssueDate"/>", "no":"<xsl:value-of select="n1:Invoice/cbc:ID"/>", "ettn":"<xsl:value-of select="n1:Invoice/cbc:UUID"/>",
"parabirimi":"<xsl:value-of select="n1:Invoice/cbc:DocumentCurrencyCode"/>", "malhizmettoplam":"<xsl:value-of
select="n1:Invoice/cac:LegalMonetaryTotal/cbc:LineExtensionAmount"/>",
<xsl:for-each
<xsl:text>"kdvmatrah</xsl:text>(<xsl:value-of select="cbc:Percent"/>)":"<xsl:value-of select="cbc:TaxableAmount"/>",
</xsl:for-each>
<xsl:for-each
<xsl:text>"hesaplanankdv</xsl:text>(<xsl:value-of select="cbc:Percent"/>)":"<xsl:value-of select="cbc:TaxAmount"/>",
</xsl:for-each> "vergidahil":"<xsl:value-of
select="n1:Invoice/cac:LegalMonetaryTotal/cbc:TaxInclusiveAmount"/>", "odenecek":"<xsl:value-of
select="n1:Invoice/cac:LegalMonetaryTotal/cbc:PayableAmount"/>"
}
</div>
<script type="text/javascript">
var qrcode = new QRCode(document.getElementById("qrcode"), { width : 140,
height : 140,
correctLevel: QRCode.CorrectLevel.L
});
var minifiedValues =document.getElementById("qrvalue").innerHTML.replace(/\s/g, ''); qrcode.makeCode(minifiedValues)
</script>
</td>
Tarih:14/08/2023
Konu: e-Belgelerde Karekod Basım Desteği
e-Arşiv belgeleri için 2. Kod bloğu:
<td width="40%" align="center" valign="middle" >
<div id="qrcode" style="width:140px;"/>
<div id="qrvalue" style="visibility: hidden;position:absolute;">
{
"vkntckn":"<xsl:value-of
"avkntckn":"<xsl:value-of
"senaryo":"<xsl:value-of select="n1:Invoice/cbc:ProfileID"/>",
Tarih:14/08/2023
Konu: e-Belgelerde Karekod Basım Desteği
"tip":"<xsl:value-of select="n1:Invoice/cbc:InvoiceTypeCode"/>", "tarih":"<xsl:value-of select="n1:Invoice/cbc:IssueDate"/>", "no":"<xsl:value-of select="n1:Invoice/cbc:ID"/>", "ettn":"<xsl:value-of select="n1:Invoice/cbc:UUID"/>",
"parabirimi":"<xsl:value-of select="n1:Invoice/cbc:DocumentCurrencyCode"/>", "malhizmettoplam":"<xsl:value-of select="n1:Invoice/cac:LegalMonetaryTotal/cbc:LineExtensionAmount"/>",
<xsl:for-each
<xsl:text>"kdvmatrah</xsl:text>(<xsl:value-of select="cbc:Percent"/>)":"<xsl:value-of select="cbc:TaxableAmount"/>",
</xsl:for-each>
<xsl:for-each
<xsl:text>"hesaplanankdv</xsl:text>(<xsl:value-of select="cbc:Percent"/>)":"<xsl:value-of select="cbc:TaxAmount"/>",
</xsl:for-each>
"vergidahil":"<xsl:value-of select="n1:Invoice/cac:LegalMonetaryTotal/cbc:TaxInclusiveAmount"/>", "odenecek":"<xsl:value-of select="n1:Invoice/cac:LegalMonetaryTotal/cbc:PayableAmount"/>"
}
</div>
<script type="text/javascript">
var qrcode = new QRCode(document.getElementById("qrcode"), { width : 140,
height : 140,
correctLevel: QRCode.CorrectLevel.L
});
var minifiedValues = document.getElementById("qrvalue").innerHTML.replace(/\s/g, '') ; qrcode.makeCode(minifiedValues)
</script>
</td>
e-İrsaliye belgeleri için 2. Kod bloğu:
<td width="40%" align="center" valign="middle" >
<div id="qrcode" style="width:140px;"/>
<div id="qrvalue" style="visibility: hidden;position:absolute;">
{
Tarih:14/08/2023
Konu: e-Belgelerde Karekod Basım Desteği
"vkntckn":"<xsl:value-of
"avkntckn":"<xsl:value-of
"senaryo":"<xsl:value-of select="n1:DespatchAdvice/cbc:ProfileID"/>", "tip":"<xsl:value-of select="n1:DespatchAdvice/cbc:DespatchAdviceTypeCode"/>", "tarih":"<xsl:value-of select="n1:DespatchAdvice/cbc:IssueDate"/>", "no":"<xsl:value-of select="n1:DespatchAdvice/cbc:ID"/>",
"ettn":"<xsl:value-of select="n1:DespatchAdvice/cbc:UUID"/>", "sevktarihi":"<xsl:value-of
select="n1:DespatchAdvice/cac:Shipment/cac:Delivery/cac:Despatch/cbc:ActualDespatchDate"/>", "sevkzamani":"<xsl:value-of select="substring(n1:DespatchAdvice/cac:Shipment/cac:Delivery/cac:Despatch/cbc:ActualDespatchTime, 0,9)"/>",
"tasiyicivkn":"<xsl:value-of select="n1:DespatchAdvice/cac:Shipment/cac:Delivery/cac:CarrierParty/cac:PartyIdentification/cbc:ID"/
>",
"plaka":"<xsl:value-of select="n1:DespatchAdvice/cac:Shipment/cac:ShipmentStage/cac:TransportMeans/cac:RoadTransport/c bc:LicensePlateID"/>"
}
</div>
<script type="text/javascript">
var qrcode = new QRCode(document.getElementById("qrcode"), { width : 140,
height : 140,
correctLevel: QRCode.CorrectLevel.L
});
var minifiedValues = document.getElementById("qrvalue").innerHTML.replace(/\s/g, ''); qrcode.makeCode(minifiedValues)
</script>
</td>
e-Müstahsil belgeleri için 2. Kod bloğu:
<div id="qrcode" style="width:140px;"/>
<div id="qrvalue" style="visibility: hidden;position:absolute;">
{
Tarih:14/08/2023
Konu: e-Belgelerde Karekod Basım Desteği
"vkntckn":"<xsl:value-of
"avkntckn":"<xsl:value-of
"senaryo":"<xsl:value-of select="n1:CreditNote/cbc:ProfileID"/>", "tip":"MUHTAHSILMAKBUZU",
"tarih":"<xsl:value-of select="n1:CreditNote/cbc:IssueDate"/>", "no":"<xsl:value-of select="n1:CreditNote/cbc:ID"/>", "ettn":"<xsl:value-of select="n1:CreditNote/cbc:UUID"/>",
"parabirimi":"<xsl:value-of select="n1:CreditNote/cbc:DocumentCurrencyCode"/>", "malhizmettoplam":"<xsl:value-of select="n1:CreditNote/cac:LegalMonetaryTotal/cbc:LineExtensionAmount"/>",
<xsl:for-each
= '0003']">
"gvstopaj":"<xsl:value-of select="cbc:TaxAmount"/>",
</xsl:for-each>
<xsl:for-each
= '9040']">
"merafonu":"<xsl:value-of select="cbc:TaxAmount"/>",
</xsl:for-each>
<xsl:for-each
= '8001']">
"borsatescilucreti":"<xsl:value-of select="cbc:TaxAmount"/>",
</xsl:for-each>
<xsl:for-each
= 'SGK_PRIM']">
"sgkprimkesintisi":"<xsl:value-of select="cbc:TaxAmount"/>",
</xsl:for-each>
"odenecek":"<xsl:value-of select="n1:CreditNote/cac:LegalMonetaryTotal/cbc:PayableAmount"/>"
}
</div>
<script type="text/javascript">
var qrcode = new QRCode(document.getElementById("qrcode"), { width : 140,
height : 140,
Tarih:14/08/2023
Konu: e-Belgelerde Karekod Basım Desteği
correctLevel: QRCode.CorrectLevel.L
});
var minifiedValues = document.getElementById("qrvalue").innerHTML.replace(/\s/g, ''); qrcode.makeCode(minifiedValues)
</script>
</td>
Not!!! Özel tasarım dizayn kullanımında xslt dosya yolu olarak …\TemelSet\XSLT klasörü içindeki xslt dosyaları verilmişse, güncelleme öncesinde bu dosyaların yedeklenmesi önerilir. Güncelleme sonrası bu dizindeki xslt dosyalarıda güncellenecektir.
Tarih:14/08/2023
Konu: e-Belgelerde Karekod Basım Desteği