Faturada Rakamı Yazıya Çevirme |
|||
Konuyu görüntüleyenler: 3 Misafir
|
|||
|
|||
|
|||
|
|||
tiktak78
Acemi Üye Mesajlar: 37 Konular: 5 Katılma Tarihi: Aug 2012 Rep Puanı: 0 Teşekkürler: 173
13 Mesajına, 15 Teşekkür edildi. Kişisel Bilgileri:
Konu Tarihi: 11-29-2013 02:26 AM
(11-29-2013 12:58 AM)asrindavasi Yazılan:(11-27-2013 11:58 PM)tiktak78 Yazılan:(11-27-2013 11:48 PM)asrindavasi Yazılan:(11-27-2013 11:18 PM)tiktak78 Yazılan: Bende hiç bir değişiklik olmadı kardeşim..Hocam sizin yüklediğiniz dosyayı 1.5.2.1 sürümünde denedim sorunsuz çalıştı. Hatta sizin verdiğiniz kodlar sayesinde fatura basmaya başladım ve sorunsuz kullanıyorum ve kodlarda, kod olarak bir değişiklik yapmadım. Yalnızca büyük harfleri küçük harflere çevirdim. Hangi sürümü kullanıyorsunuz. Belki sürümden kaynaklı olabilir. sende sorunsuz çalıştığına sevindim kardeşim.ben teşekkür ederim sağol. |
|
idris
Acemi Üye Mesajlar: 2 Konular: 0 Katılma Tarihi: Jun 2012 Rep Puanı: 0 Teşekkürler: 0
0 Mesajına, 0 Teşekkür edildi. Kişisel Bilgileri: |
deathpoint
Acemi Üye Mesajlar: 3 Konular: 1 Katılma Tarihi: Jan 2014 Rep Puanı: 0 Teşekkürler: 0
0 Mesajına, 0 Teşekkür edildi. Kişisel Bilgileri: |
soulofthesea
Acemi Üye Mesajlar: 10 Konular: 2 Katılma Tarihi: Mar 2012 Rep Puanı: 0 Teşekkürler: 0
0 Mesajına, 0 Teşekkür edildi. Kişisel Bilgileri:
Konu Tarihi: 03-14-2014 01:09 AM
Arkadaşlar bu şekilde, birim fiyat kdv dahil çıkıyor. Muhasebeci bu şekilde fatura kesemeyeceğimi söyledi. Ben de kodlarda biraz oynama yapıp,
<?php echo $product['price']/1.08; ?></td> <td align="right"> <?php echo $product['total']/1.08; ?></td> </tr> <?php } ?> yani, birim fiyatı /1.08 şeklinde yaptım ancak ondalık basamak sayısı 32.3148148148 şeklinde çıkıyor. Bu soruna nasıl bir çözüm bulabiliriz. Bu arada bu kodları düzenleyen arkadaşıma teşekkür ederim. birim fiyat olayını da halledince hiç bir sorunum kalmayacak. iyi çalışmalar herkese. |
bulutlu-1
Acemi Üye Mesajlar: 38 Konular: 7 Katılma Tarihi: Feb 2013 Rep Puanı: 0 Teşekkürler: 0
2 Mesajına, 3 Teşekkür edildi. Kişisel Bilgileri:
Konu Tarihi: 01-09-2017 10:35 PM
Arkadaşlar burada paylaşılan faturayı yazıyla yazdırma kodlarını opencart 2.0.3.1 tabanlı sitemde uyguladım.
Ancak 52,40 TL olan sipariş tutarını, YALNIZ ELLİİKİ TÜRK LİRASI KIRK KURUŞ şeklinde göstermesi gerekiyorken, YALNIZ BEŞBİN İKİYÜZKIRK TÜRK LİRASI şeklinde gösteriyor. Ayrıca; 1.286,71 TL olan siparişi tutarını, YALNIZ BİN İKİYÜZSEKSENALTI TÜRK LİRASI YETMİŞBİR KURUŞ şeklinde göstermesi gerekirken, YALNIZ BİR TÜRK LİRASI YİRMİDOKUZ KURUŞ şeklinde gösteriyor. Bu sorunu nasıl çözebiliriz. Bilen üstatların yardım etmesini rica ediyorum. |
sukru058
Acemi Üye Mesajlar: 4 Konular: 1 Katılma Tarihi: May 2016 Rep Puanı: 0 Teşekkürler: 0
0 Mesajına, 0 Teşekkür edildi. Kişisel Bilgileri:
Konu Tarihi: 10-05-2017 02:39 PM
(01-09-2017 10:35 PM)bulutlu-1 Yazılan: Arkadaşlar burada paylaşılan faturayı yazıyla yazdırma kodlarını opencart 2.0.3.1 tabanlı sitemde uyguladım. aynı sorun bendede vardı ben söyle çözdüm umarım sorununuzu çözer <?php class yaziyla { var $sayi=0; var $kurus=0; var $eksi=""; var $birim="TL"; var $kurus_birim = "KR"; var $bolukler; var $birler; var $onlar; function yaziyla($birim="TL", $kurus_birim="KR") { $this->birim = $birim; $this->kurus_birim = $kurus_birim; $this->bolukler = array("","BİN","Milyon","Milyar","Trilyon","Katrilyon","Trilyar","Kentrilyon","Kentrilyar","Zontrilyar"); $this->birler = array("SIFIR","BİR","İKİ","ÜÇ","DÖRT","BEŞ","ALTI","YEDİ","SEKİZ","DOKUZ"); $this->onlar = array("","ON","YİRMİ","OTUZ","KIRK","ELLİ","ALTMIŞ","YETMİŞ","SEKSEN","DOKSAN","YÜZ"); } function yaz($sayi) { $tam=""; $kurus=""; if($this->sayi_cozumle($sayi)) { return "Hatalı Sayı Formatı!"; } if(($this->sayi+$this->kurus) == 0) return $this->birler[0].' '.$this->birim; if($this->sayi>0) $tam = $this->oku($this->sayi); if($this->kurus>0) $kurus = $this->oku($this->kurus); if( $this->sayi == 0 ) return $this->eksi.' '.$kurus.' '.$this->kurus_birim; if( $this->kurus == 0 ) return $this->eksi.' '.$tam.' '.$this->birim; return $this->eksi.' '.$tam.' '.$this->birim.' '.$kurus.' '.$this->kurus_birim; } function oku($sayi) { if($sayi == 0) return $this->birler[0]; $ubb = sizeof($this->bolukler); $kac_sifir = 3 - (strlen($sayi) % 3); if($kac_sifir!=3) for($i=0;$i<$kac_sifir;++$i) { $sayi = "0$sayi"; } $k = 0; $sonuc = ""; for($i = strlen($sayi); $i>0; $i-=3,++$k) { $boluk = $this->boluk_oku(substr($sayi, $i-3, 3)); if($boluk) { if(($k == 1) && ($boluk == $this->birler[1])) $boluk = ""; if( $k > $ubb) $sonuc = $boluk ."Tanımsız(".($k*3).".Basamak) $sonuc"; else $sonuc = $boluk . $this->bolukler[$k]." $sonuc"; } } return $sonuc; } function boluk_oku($sayi) { $sayi = ((int)($sayi)) % 1000; $sonuc = ""; $bir = $sayi % 10; $on_ = (int)($sayi / 10) % 10; $yuz = (int)($sayi / 100) % 10; if($yuz) { if($yuz == 1) $sonuc = $this->onlar[10]; else $sonuc = $this->birler[$yuz].$this->onlar[10]; } if($on_) $sonuc = $sonuc.$this->onlar[$on_]; if($bir) $sonuc = $sonuc.$this->birler[$bir]; return $sonuc; } function sayi_cozumle($sayi) { $sayi = trim($sayi); if($sayi[0] == "-") { $this->eksi="Eksi"; $sayi = substr($sayi, 1); } if(preg_match("/^(0*\.0+|0*|\.0+)$/", $sayi)) { $this->sayi = $this->kurus = 0; return 0; } if(preg_match("/^(\d+)\.(\d+)$/", $sayi, $m)) { $sayi = $m[1]; $this->sayi = (int)preg_replace("/^0+/","",$sayi); if(!preg_match("/^0+$/",$m[2])) $this->kurus = (int)$m[2]; } else if(preg_match("/^0*(\d+)$/", $sayi, $m) || preg_match("/^0*(\d+)\.0+$/", $sayi, $m)) { $this->sayi = (int)$m[1]; } else if(preg_match("/^0*\.(\d+)$/", $sayi, $m)) { $this->sayi = 0; $this->kurus = (int)$m[1]; } else return 1; if($this->kurus>0) { $this->kurus= number_format('0.'.$this->kurus, 2); if( (int)$this->kurus == 1 ) { ++$this->sayi; $this->kurus = 0; } else $this->kurus = (int)str_replace("0.", "", $this->kurus); } return 0; } } $yaziyla = new yaziyla("TÜRK LİRASI", "KURUŞ"); ?> gözükmesini istediğiniz yerede şu kodu yazın <?php function para($veri = 0){ $veri = number_format($veri,2,".",","); return $veri; } function vdegis($veri) { $veri = str_replace(".","",$veri); $veri = str_replace(",",".",$veri); return $veri; } $fiyat1 = $total['text']; $sonuc = vdegis($fiyat1); $miktar = $sonuc; $yenimiktar = str_replace("TL","",$miktar); $yenimiktar2 = str_replace(" ","",$yenimiktar); $yenimiktar3 = str_replace(",","",$yenimiktar2); ?> <?php echo 'YALNIZ'. $yaziyla->yaz($yenimiktar3); ?> </td> </tr></table> |
osdem66
Forum Kurucusu Mesajlar: 2,121 Konular: 158 Katılma Tarihi: Dec 2011 Rep Puanı: 27 Teşekkürler: 393
522 Mesajına, 1445 Teşekkür edildi. Kişisel Bilgileri: |
cihataydemir
Acemi Üye Mesajlar: 1 Konular: 0 Katılma Tarihi: Nov 2017 Rep Puanı: 0 Teşekkürler: 1
0 Mesajına, 0 Teşekkür edildi. Kişisel Bilgileri:
Konu Tarihi: 11-03-2017 01:26 PM
Hocam selamlar,
Dosyayı bulamadım. Nereden bulabilirim? Teşekkürler. (11-27-2013 10:07 PM)asrindavasi Yazılan:(11-27-2013 03:40 PM)tiktak78 Yazılan:(11-27-2013 01:10 AM)asrindavasi Yazılan: Hocam sizden Allah ebeden razı olsun. Çok teşekkür ederim. Kodu entegre ettim çok güzel çalıştı. Bahsettiğiniz hatayla karşılaşmadım. order_invoice.tpl dosyasını yüklerseniz elimden geldiğince yardımcı olmaya çalışayım. Birde kabul ederseniz tebberrüken ödeme yapmak istiyorum. Ödeme bilgilerinizi gönderirseniz memnun olurum. Teşekkür ederim. |
ocreset82
Acemi Üye Mesajlar: 3 Konular: 1 Katılma Tarihi: Oct 2016 Rep Puanı: 0 Teşekkürler: 0
0 Mesajına, 0 Teşekkür edildi. Kişisel Bilgileri:
Konu Tarihi: 12-20-2017 01:06 AM
<?php
class yaziyla { var $sayi=0; var $kurus=0; var $eksi=""; var $birim="TL"; var $kurus_birim = "KR"; var $bolukler; var $birler; var $onlar; function yaziyla($birim="TL", $kurus_birim="KR") { $this->birim = $birim; $this->kurus_birim = $kurus_birim; $this->bolukler = array("","BİN","Milyon","Milyar","Trilyon","Katrilyon","Trilyar","Kentrilyon","Kentrilyar","Zontrilyar"); $this->birler = array("SIFIR","BİR","İKİ","ÜÇ","DÖRT","BEŞ","ALTI","YEDİ","SEKİZ","DOKUZ"); $this->onlar = array("","ON","YİRMİ","OTUZ","KIRK","ELLİ","ALTMIŞ","YETMİŞ","SEKSEN","DOKSAN","YÜZ"); } function yaz($sayi) { $tam=""; $kurus=""; if($this->sayi_cozumle($sayi)) { return "Hatalı Sayı Formatı!"; } if(($this->sayi+$this->kurus) == 0) return $this->birler[0].' '.$this->birim; if($this->sayi>0) $tam = $this->oku($this->sayi); if($this->kurus>0) $kurus = $this->oku($this->kurus); if( $this->sayi == 0 ) return $this->eksi.' '.$kurus.' '.$this->kurus_birim; if( $this->kurus == 0 ) return $this->eksi.' '.$tam.' '.$this->birim; return $this->eksi.' '.$tam.' '.$this->birim.' '.$kurus.' '.$this->kurus_birim; } function oku($sayi) { if($sayi == 0) return $this->birler[0]; $ubb = sizeof($this->bolukler); $kac_sifir = 3 - (strlen($sayi) % 3); if($kac_sifir!=3) for($i=0;$i<$kac_sifir;++$i) { $sayi = "0$sayi"; } $k = 0; $sonuc = ""; for($i = strlen($sayi); $i>0; $i-=3,++$k) { $boluk = $this->boluk_oku(substr($sayi, $i-3, 3)); if($boluk) { if(($k == 1) && ($boluk == $this->birler[1])) $boluk = ""; if( $k > $ubb) $sonuc = $boluk ."Tanımsız(".($k*3).".Basamak) $sonuc"; else $sonuc = $boluk . $this->bolukler[$k]." $sonuc"; } } return $sonuc; } function boluk_oku($sayi) { $sayi = ((int)($sayi)) % 1000; $sonuc = ""; $bir = $sayi % 10; $on_ = (int)($sayi / 10) % 10; $yuz = (int)($sayi / 100) % 10; if($yuz) { if($yuz == 1) $sonuc = $this->onlar[10]; else $sonuc = $this->birler[$yuz].$this->onlar[10]; } if($on_) $sonuc = $sonuc.$this->onlar[$on_]; if($bir) $sonuc = $sonuc.$this->birler[$bir]; return $sonuc; } function sayi_cozumle($sayi) { $sayi = trim($sayi); if($sayi[0] == "-") { $this->eksi="Eksi"; $sayi = substr($sayi, 1); } if(preg_match("/^(0*\.0+|0*|\.0+)$/", $sayi)) { $this->sayi = $this->kurus = 0; return 0; } if(preg_match("/^(\d+)\.(\d+)$/", $sayi, $m)) { $sayi = $m[1]; $this->sayi = (int)preg_replace("/^0+/","",$sayi); if(!preg_match("/^0+$/",$m[2])) $this->kurus = (int)$m[2]; } else if(preg_match("/^0*(\d+)$/", $sayi, $m) || preg_match("/^0*(\d+)\.0+$/", $sayi, $m)) { $this->sayi = (int)$m[1]; } else if(preg_match("/^0*\.(\d+)$/", $sayi, $m)) { $this->sayi = 0; $this->kurus = (int)$m[1]; } else return 1; if($this->kurus>0) { $this->kurus= number_format('0.'.$this->kurus, 2); if( (int)$this->kurus == 1 ) { ++$this->sayi; $this->kurus = 0; } else $this->kurus = (int)str_replace("0.", "", $this->kurus); } return 0; } } $yaziyla = new yaziyla("TÜRK LİRASI", "KURUŞ"); ?> gözükmesini istediğiniz yerede şu kodu yazın <?php function para($veri = 0){ $veri = number_format($veri,2,".",","); return $veri; } function vdegis($veri) { $veri = str_replace(".","",$veri); $veri = str_replace(",",".",$veri); return $veri; } $fiyat1 = $total['text']; $sonuc = vdegis($fiyat1); $miktar = $sonuc; $yenimiktar = str_replace("TL","",$miktar); $yenimiktar2 = str_replace(" ","",$yenimiktar); $yenimiktar3 = str_replace(",","",$yenimiktar2); ?> <?php echo 'YALNIZ'. $yaziyla->yaz($yenimiktar3); ?> </td> </tr></table> BU OPENCART 2.X de ÇALIŞTI TEK SORUN ŞU KALDI. ÖRNEK: 23,01 TL NORMALDE YAZMASI GEREKEN: YİRMİÜÇ TÜRK LİRASI 1 KURUŞ ŞUAN YAZAN: YİRMİÜÇ TÜRK LİRASI ON KURUŞ Osdem Baba bi el atıversen çok makbule geçecek.. Bu ufak hatayı giderebilecek kimse yokmu? |
bayoguz
Acemi Üye Mesajlar: 3 Konular: 0 Katılma Tarihi: Nov 2018 Rep Puanı: 0 Teşekkürler: 0
0 Mesajına, 0 Teşekkür edildi. Kişisel Bilgileri:
Konu Tarihi: 12-19-2018 05:04 PM
buna benim de ihtiyacım var (Opencart 2.3.0.2 için)
1- birim fiyat ve Tutar bölümlerine KDVSiz yazması gerekiyor 2- bu ikisinin arasına kdv orannını eklemek istiyorum 3- en altta da yazıyla yazdırmak istiyorum. Yukarıdaki kodları denedim malesef YALNIZHatalı Sayı Formatı! yazdı. 1. ve 2. şıkları da bi türlü yapamadım. |
|
|
Direk Link | |
HTML Link | |
BBCode Link | |
Sosyal Paylaş |
Benzeyen Konular | |||||
Konu: | Yazar | Cevaplar: | Gösterim: | Son Mesaj | |
Faturada KDV Oranını Gösterme | synthetico | 1 | 1,777 |
12-19-2018 05:14 PM Son Mesaj: bayoguz |
|
Marka İsmini adminde Faturada göstermek..155x ve 156x | osdem66 | 0 | 2,012 |
09-27-2014 12:49 PM Son Mesaj: osdem66 |