select customer_id, count(*)
from calling
group by customer_id
having count(*) > 1
order by customer_id

select cu.customer_id as ID,cu.customer_name as NAMA,cu.customer_phone as PHONE1,cu.customer_phone_2 as PHONE2,cu.customer_address as ALAMAT, pl.product_id as PRODUK,cs.calling_strike_name,(select max(calling.phone_date)
from calling where calling.customer_id=cu.customer_id and calling.calling_target_name=pl.consumed_by) as telepon  from customer cu
inner join product_log pl on pl.customer_id=cu.customer_id
inner join calling ca on ca.customer_id=cu.customer_id
inner join calling_strike cs on cs.calling_strike_id=ca.calling_strike_id
where ca.calling_strike_id='10'
and pl.product_id='lacta'
and cu.submit_date<='2010-12-09'
and pl.consumed_by=cu.customer_id
and
(select ca2.calling_strike_id from calling ca2
where ca2.customer_id = cu.customer_id
and ca2.phone_date =
(select max(ca1.phone_date) from calling ca1 where ca1.customer_id = cu.customer_id) limit 1)
not in ('12', '17')
group by cu.customer_id
order by cu.customer_name

select aa.umur_anak, count(aa.umur_anak) as jumlah
from
(
select ch.child_id, cu.customer_id, ch.child_name, ch.child_birthday,
            PERIOD_DIFF(DATE_FORMAT('2010-11-30','%Y%m'),DATE_FORMAT(ch.child_birthday,'%Y%m')) as umur_anak, cl.calling_result_id,
            cu.customer_address, cu.customer_phone, cu.customer_phone_2
from children ch
inner join  customer cu  on ch.customer_id = cu.customer_id
inner join  calling cl on cl.customer_id = cu.customer_id
where ((ch.child_birthday >= (date_sub(curdate(), interval 37 month)))
and (ch.child_birthday <= (date_sub(curdate(), interval 0 month))))
and (ch.child_birthday<> '0000-00-00' or ch.child_birthday like '0001-00-00')
and cl.validation_id='1'
and cu.followup_status = '1'
and cl.calling_result_id = '1'
and (select ca2.calling_strike_id from calling ca2 where ca2.customer_id = cu.customer_id and ca2.phone_date = (select max(ca1.phone_date) from calling ca1 where ca1.customer_id = cu.customer_id) limit 1) not in ('12', '17')
group by ch.child_id
order by ch.child_id, ch.child_birthday
-- limit 60000,60000
) aa
group by aa.umur_anak
order by aa.umur_anak

-- Data Position utk materna
select cu.customer_id, cu.customer_name, cu.customer_phone, pl.product_id, ch.child_expected_birthday, ca.calling_strike_id
from customer cu, calling ca, product_log pl, children ch
where cu.customer_id = ca.customer_id
          and ca.validation_id = '1'
          and cu.customer_id = pl.customer_id
          and cu.customer_id = ch.customer_id
          and pl.product_id = 'materna'
          and pl.consumed_by = cu.customer_id
          and cu.followup_status = '1'
          and cu.loyalty1_by <> " "
          -- and ca.calling_strike_id <> '12'      
          and ca.calling_result_id = '1'
          and ca.calling_for_id = '3'
          -- and ca.calling_strike_id in ('4','5','10','11','13','14','15')
          and (select ca2.calling_strike_id from calling ca2 where ca2.customer_id = cu.customer_id and ca2.phone_date = (select max(ca1.phone_date) from calling ca1 where ca1.customer_id = cu.customer_id) limit 1) not in ('12', '17')
          and ch.child_expected_birthday <> '0000-00-00'
          and cu.submit_date <= curdate()
          -- and cu.customer_id = '01080800030023'
group by cu.customer_id
order by cu.customer_id

CREATE VIEW vUsiaAnakAll
as
SELECT ch.child_id, ch.child_name,ch.child_birthday,  ch.customer_id,PERIOD_DIFF(DATE_FORMAT(CURDATE(),'%Y%m'),DATE_FORMAT(ch.child_birthday,'%Y%m')) as umur
FROM children ch inner join customer cu using (customer_id)
WHERE cu.followup_status='1' and ((ch.child_birthday >= (date_sub(curdate(), interval 36 month)))
and (ch.child_birthday <= (date_sub(curdate(), interval 0 month))))
order by ch.child_birthday

select aa.umur_anak, count(aa.umur_anak) as jumlah
from
(
select distinct ch.child_id, cu.customer_id, ch.child_birthday,
            PERIOD_DIFF(DATE_FORMAT('2010-11-04','%Y%m'),DATE_FORMAT(ch.child_birthday,'%Y%m')) as umur_anak
from children ch
inner join  customer cu  on ch.customer_id = cu.customer_id
inner join  calling cl on cl.customer_id = cu.customer_id
where ((ch.child_birthday >= (date_sub(curdate(), interval 36 month)))
and (ch.child_birthday <= (date_sub(curdate(), interval 0 month))))
and (ch.child_birthday<> '0000-00-00' or ch.child_birthday like '0001-00-00')
and cl.validation_id='1'
and cu.followup_status = '1'
and cl.calling_strike_id in ('4','5','10','11','13','14','15')
order by ch.child_birthday
) aa
group by aa.umur_anak
order by aa.umur_anak

<script type="text/javascript">

function dontEnter(evt) {
var evt = (evt) ? evt : ((event) ? event : null);
  var node = (evt.target) ? evt.target : ((evt.srcElement) ? evt.srcElement : null);
  if ((evt.keyCode == 13) && (node.type=="text"))  {return false;}
}
document.onkeypress = dontEnter;

</script>

select aa.periode, aa.product_id, count(*) as JumlahLacta, sum(aa.0sd3bln) as 0sd3bln, sum(aa.3sd6bln) as 3sd6bln, sum(aa.6sd9bln) as 6sd9bln,
         sum(aa.9sd12bln) as 9sd12bln, sum(aa.TotOthers) as TotOthers, sum(aa.Success) as Success, sum(aa.NotSuccess) as NotSuccess,
         sum(aa.NotCalling) as NotCalling, sum(aa.NewData) as NewData,
         sum(aa.OldData) as OldData, sum(aa.Users) as Users, sum(aa.Prospects) as Prospects,
         sum(aa.DO) as TotalDO, sum(aa.DO0sd3bln) as DO0sd3bln, sum(aa.DO3sd6bln) as DO3sd6bln, sum(aa.DO6sd9bln) as DO6sd9bln, sum(aa.DO9sd12bln) as DO9sd12bln,
         sum(aa.DOlbh12) as OhtersDOLbh12,
         sum(aa.TotalFO) as TotalFO,
         sum(aa.FO0sd3bln) as FO0sd3bln, sum(aa.FO3sd6bln) as FO3sd6bln, sum(aa.FO6sd9bln) as FO6sd9bln, sum(aa.FO9sd12bln) as FO9sd12bln,
         sum(aa.FOlbh12) as OhtersFOLbh12,
         (sum(aa.Users) +  sum(aa.Prospects) + sum(aa.DO) + sum(aa.TotalFO)) as Total
from
(
select date_format(cu.submit_date,'%Y%m') as Periode, pl.product_id, pl.customer_id, cu.customer_name, cu.customer_address, cu.customer_phone, cu.customer_city,
         ca.phone_date, ca.calling_for_id, ca.calling_strike_id, ca.calling_target_id, (case when ca.calling_strike_id = '12' then 1 else 0 end) as DO,
         ca.calling_result_id, (case when ca.calling_result_id = '1' then 1 else 0 end) as Success, (case when ca.calling_result_id = '2' then 1 else 0 end) as NotSuccess,
         (case when ca.calling_result_id is null or '' then 1 else 0 end) as NotCalling,
         (case when date_format(cu.recruit_date,'%Y%m') = '201001' then 1 else 0 end) as NewData,
         (case when date_format(cu.recruit_date,'%Y%m') < '201001' then 1 else 0 end) as OldData,
         (case when ca.calling_strike_id = '10' then 1 else 0 end) as Users,
         (case when ca.calling_strike_id = '13' then 1 else 0 end) as Prospects,
         ch.child_name, ch.child_birthday, period_diff(date_format(curdate(),'%Y%m'), date_format(ch.child_birthday, '%Y%m')) as selisih_bulan,
         (case when period_diff(date_format(curdate(),'%Y%m'), date_format(ch.child_birthday, '%Y%m')) between 0 and 3 then 1 else 0 end) as 0sd3bln,
         (case when period_diff(date_format(curdate(),'%Y%m'), date_format(ch.child_birthday, '%Y%m')) between 4 and 6 then 1 else 0 end) as 3sd6bln,
         (case when period_diff(date_format(curdate(),'%Y%m'), date_format(ch.child_birthday, '%Y%m')) between 7 and 9 then 1 else 0 end) as 6sd9bln,
         (case when period_diff(date_format(curdate(),'%Y%m'), date_format(ch.child_birthday, '%Y%m')) between 10 and 12 then 1 else 0 end) as 9sd12bln,
         (case when period_diff(date_format(curdate(),'%Y%m'), date_format(ch.child_birthday, '%Y%m')) > 12 then 1 end) as TotOthers,
         (case when ca.calling_strike_id = '12' and period_diff(date_format(curdate(),'%Y%m'), date_format(ch.child_birthday, '%Y%m')) between 0 and 3 then 1 else 0 end) as DO0sd3bln,
         (case when ca.calling_strike_id = '12' and period_diff(date_format(curdate(),'%Y%m'), date_format(ch.child_birthday, '%Y%m')) between 4 and 6 then 1 else 0 end) as DO3sd6bln,
         (case when ca.calling_strike_id = '12' and period_diff(date_format(curdate(),'%Y%m'), date_format(ch.child_birthday, '%Y%m')) between 7 and 9 then 1 else 0 end) as DO6sd9bln,
         (case when ca.calling_strike_id = '12' and period_diff(date_format(curdate(),'%Y%m'), date_format(ch.child_birthday, '%Y%m')) between 10 and 12 then 1 else 0 end) as DO9sd12bln,
         (case when ca.calling_strike_id = '12' and period_diff(date_format(curdate(),'%Y%m'), date_format(ch.child_birthday, '%Y%m')) > 12 then 1 else 0 end) as DOlbh12,
         (case when ca.calling_strike_id = '14' then 1 else 0 end) as TotalFO,
         (case when ca.calling_strike_id = '14' and period_diff(date_format(curdate(),'%Y%m'), date_format(ch.child_birthday, '%Y%m')) between 0 and 3 then 1 else 0 end) as FO0sd3bln,
         (case when ca.calling_strike_id = '14' and period_diff(date_format(curdate(),'%Y%m'), date_format(ch.child_birthday, '%Y%m')) between 4 and 6 then 1 else 0 end) as FO3sd6bln,
         (case when ca.calling_strike_id = '14' and period_diff(date_format(curdate(),'%Y%m'), date_format(ch.child_birthday, '%Y%m')) between 7 and 9 then 1 else 0 end) as FO6sd9bln,
         (case when ca.calling_strike_id = '14' and period_diff(date_format(curdate(),'%Y%m'), date_format(ch.child_birthday, '%Y%m')) between 10 and 12 then 1 else 0 end) as FO9sd12bln,
         (case when ca.calling_strike_id = '14' and period_diff(date_format(curdate(),'%Y%m'), date_format(ch.child_birthday, '%Y%m')) > 12 then 1 else 0 end) as FOlbh12
from product_log pl, customer cu, calling ca, children ch
where pl.product_id = 'lacta' and date_format(cu.submit_date,'%Y%m') = '201001' and cu.followup_status = '1' and
          pl.customer_id = cu.customer_id and pl.customer_id = ca.customer_id and
          ca.calling_target_id = '1' and pl.customer_id = ch.customer_id and ch.child_birthday <> ' ' and
          ch.child_birthday > '0000-00-00' and ca.calling_strike_id > 0
order by pl.customer_id
) as aa
group by aa.periode, aa.product_id
order by aa.periode

Pada MySQL, fungsi datediff biasanya digunakan untuk mencari selisih tanggal (dalam satuan hari) dengan menggunakan SQL, sintaksnya adalah sebagai berikut :

SELECT datediff('tgl1', 'tgl2');
 
tgl1 dan tgl2 adalah tanggal-tanggal yang akan dicari selisihnya. Untuk format tanggal adalah th-bln-tgl.
Apabila tgl1 < tgl2, maka akan diperoleh selisih hari bernilai negatif. Sedangkan apabila tgl1 > tgl2, maka akan diperoleh selisih 
hari yang bernilai positif.
 
Contoh :
SELECT datediff('2008-01-11','2008-01-01');
 
Dari perintah di atas akan diperoleh hasil  10 (artinya 10 hari).
Untuk mencari selisih dari 2 waktu, sintaks SQL nya adalah :
SELECT timediff('time1', 'time2');
Format time1 dan time2 dapat berupa waktu dalam jam (jam:menit:detik) atau tanggal saja (th-bln-tgl) atau bahkan gabungan jam dan tanggal (th-bln-tgl jam:menit:detik).
Perintah SQL ini akan menghasilkan output dalam format jam (jam:menit:detik).
 
Contoh :
SELECT timediff('14:00', '15:01');
 
Perintah ini akan menghasilkan 1:01:00 (1 jam, 1 menit, 0 detik).
 
 
Sumber :
http://www.firazstarlight.info/tips-dan-trik-php/71-penggunaan-fungsi-datediff-pada-mysql.html

select a.product_id, a.customer_id, b.customer_name, b.customer_city, c.child_name, c.child_number, round(((datediff(current_date(), c.child_birthday)) / 30)) as UmurBln,
         (case when d.calling_result_id = '1' then 'Success'
                  when d.calling_result_id = '2' then 'Not Success' end) CallingResult,
         d.calling_strike_id
from product_log a, customer b, children c, calling d
where a.customer_id = b.customer_id and
          a.customer_id = c.customer_id and
          a.customer_id = d.customer_id and
          a.product_id = 'IF1' and
         round(((datediff(current_date(), c.child_birthday)) / 30)) between '0' and '2' and
         d.calling_result_id = '1' and d.calling_strike_id in ( '1', '10') and
         a.input_date <= '2010-09-17'
order by a.customer_id;

Pada MSSQL perintahnya adalah sbb :

SELECT * FROM TABLE_NAME WITH (nolock)

sedangkan pada MYSQL perintahnya adalah sbb :

SET SESSION TRANSACTION ISOLATION LEVEL READ UNCOMMITTED;
SELECT * FROM TABLE_NAME ;
SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ;
 
 
Sumber :
http://stackoverflow.com/questions/917640/any-way-to-select-without-causing-locking-in-mysql
 

SELECT * FROM `your_table` LIMIT 0, 10
 
Akan menampilkan 10 record pertama dari database.
 
SELECT * FROM `your_table` LIMIT 5, 5
 
Akan menampilkan 5 record dari database dimulai dari record ke 5, yaitu record ke 6, 7, 8, 9, dan 10.
 
 
Sumber :
http://php.about.com/od/mysqlcommands/g/Limit_sql.htm 

Kita dapat meng-copy struktur table dan seluruh record ke sebuah tabel baru. Perintah CREATE TABLE akan membuat sebuah table dengan struktur yang sama dengan tabel yang lama dan akan menambah seluruh record yang ada.

CREATE TABLE student2
SELECT * FROM studeng


Jika kita ingin membuat sebuah tabel baru dan hanya ingin meng-copy struktur nya :


create table t1 like student

Untuk menghapus tabel yang telah ada :

DROP TABLE IF EXISTS 'studeng5';



Sumber :
http://www.plus2net.com/sql_tutorial/sql_copy_table.php

select aa.customer_id, aa.customer_name, aa.customer_address, aa.customer_phone, aa.pointtype, (aa.satu + aa.dua) as point
from
(
select pr.customer_id, cu.customer_name, cu.customer_address, cu.customer_phone, 
         (case when pr.point_reward_type_id  = "1" then "Point Reward"
                  when pr.point_reward_type_id = "2" then "Redeemed" end) as pointtype,
         (case when pr.point_reward_type_id = "1" then sum(pr.total_point) else 0 end) as satu,
         (case when pr.point_reward_type_id = "2" then sum(pr.total_point) else 0 end) as dua
from point_reward as pr, customer cu
/* where pr.customer_id = "081001080800040022" */
where  pr.customer_id = '01080800040427' and pr.customer_id = cu.customer_id
group by pr.customer_id, pr.point_reward_type_id
order by pr.customer_id, pr.point_reward_type_id
) aa
order by aa.customer_id, aa.customer_name, aa.customer_address, aa.customer_phone, aa.pointtype

PHP class ini sangat membantu jika kita ingin berinteraksi dengan Gammu atau Mygnokii2 1.06.00 ( GNU All Mobile Management Utilities).
menggunakan PHP 5.1.4. Pemakai dapat mengirimkan SMS, Download SMS dari Mobile Device (Handphone), Membaca SMS Inbox.
Status: Release
Lisensi: free - opensource
Sistem Operasi: All
Environment: -
Autor: Stieven R. Kalengkian
Bahasa: -
Situs: http://www.phpclasses.org/browse/package/3865.html
Download: http://php-id.org/site/Downloads-req-getit-lid-44.txt


File :
1. class.gammu_nix_win32_v2.php (Main Class)
2. example_gammu_text.php (Contoh Penggunaan)


Untuk instalasi
1. Unzip files ke www or public_html folder anda.
2. Lihat file contoh bagaimana cara penggunaannya


Konfigurasi Gammu dan 'HOW TO'nya
Silahkan merujuk ke Dokumentasi Gammu: http://www.gammu.org/


Download Gammu :
Linux : http://dl.cihar.com/gammu/releases/gammu-1.10.0.tar.gz
Windows : http://dl.cihar.com/gammu/releases/windows/Gammu-1.10.0-Windows.zip


Source Download Link:
http://php-id.org/site/Downloads-req-getit-lid-44.txt

 

Sumber :
http://opensource-indonesia.com/kioss.php/line149-phpgammuKirimSMSdenganPHPviagammu.txt

<?php
//$my_report = "c:\\RekapPHarian.rpt";
$my_report = 'C:\Program Files\xampp\htdocs\lat\report\LapArsip13.rpt';
$my_pdf = 'C:\Program Files\xampp\htdocs\lat\report\LapArsip13.pdf';
//$my_report = "C:\\report\LapArsip12.rpt";
//$my_pdf = "C:\\report\LapArsip12.pdf";
$ObjectFactory= New COM("CrystalReports11.ObjectFactory.1");
$crapp =$ObjectFactory->CreateObject("CrystalDesignRunTime.Application");
$creport = $crapp->OpenReport($my_report, 1);
//$creport->FormulaSyntax = 0;
$creport->RecordSelectionFormula= "{vimb.NmKel} = 'Belakang Balok'";
//$creport->sqlquery="select * from vimb";
$creport->ReadRecords(); //hangs here
//------ Pass formula fields --------
$creport->FormulaFields->Item(1)->Text = ("'My Report Title'");
//$creport->FormulaFields->Item(2)->Text = ("'My d Title'");
//$creport->ParameterFields(1)->AddCurrentValue ("FirstParameter");
//$creport->ParameterFields(2)->AddCurrentValue (2000);
$creport->ExportOptions->DiskFileName=$my_pdf;
$creport->ExportOptions->PDFExportAllPages=true;
$creport->ExportOptions->DestinationType=1; // Export to File
$creport->ExportOptions->FormatType=31; // Type: PDF
$creport->Export(false);
print "<embed src=\"report/LapArsip13.pdf\" width=\"100%\" height=\"100%\">";
?>

Sumber :
http://www.diskusiweb.com/viewthread.php?tid=37481

$cr=new com("CrystalRuntime.Application") or die("cannot load cr com");
$rn="F:\notes5\test.rpt";
$rap=$cr->OpenReport($rn);

$cr=new com("CrystalRuntime.Application.11") or die("cannot load cr com");
$rn="F:\notes5\test.rpt";
$rap=$cr->OpenReport($rn);

------------------------------

<?php
$crapp = new COM ("CrystalRuntime.Application") or die ("Error on
load");
$creport = $crapp->OpenReport("c:/test.rpt", 1);
$creport->ExportOptions->DiskFileName="c:/test.rtf";
$creport->ExportOptions->DestinationType=1; // Export to File
$creport->ExportOptions->FormatType=4; // Type: RTF
$creport->DiscardSavedData();
$creport->Export(false);
$creport = null;
$crapp = null;
print "...done";
?>

$crapp = new COM ("CrystalRuntime.Application")
or die ("Error on load");
echo "<p>Enumerating CrystalRuntime.Application object:</p>";
$crapp->Reset();
while ($e = $crapp->Next()) {
echo "<p>$e</p>";
}

$crapp->Release()

------------------------------

<OBJECT ID="CRViewer"
CLASSID="CLSID:C4847596-972C-11D0-9567-00A0C9273C2A"
WIDTH=100% HEIGHT=95%
CODEBASE="/viewer/activeXViewer/activexviewer.cab#Version=8,0,0,371">
<PARAM NAME="EnableDrillDown" VALUE=1>
<PARAM NAME="EnableExportButton" VALUE=1>
<PARAM NAME="DisplayGroupTree" VALUE=1>
<PARAM NAME="EnableGroupTree" VALUE=1>
<PARAM NAME="EnableAnimationControl" VALUE=1>
<PARAM NAME="EnablePrintButton" VALUE=1>
<PARAM NAME="EnableRefreshButton" VALUE=1>
<PARAM NAME="EnableSearchControl" VALUE=1>
<PARAM NAME="EnableZoomControl" VALUE=1>
<PARAM NAME="EnableSearchExpertButton" VALUE=0>
<PARAM NAME="EnableSelectExpertButton" VALUE=0>
</OBJECT>

Script PHP kali ini merupakan lanjutan dari rulisan sebelumnya yang membahas masalah pembuatan script Captcha dengan PHP. Pada tulisan sebelumnya kita sudah membahas script inti dari Captcha yang bertugas membuat gambar captcha-nya. Nah sekarang kita akan lihat bagaimana mengimplementasikannya pada sebuah form.
Pada dasarnya, kamu bisa aja menempelkan script ini di manapun. Namun dalam contoh kali ini, kita akan membuat sebuah form sederhana untuk mencoba script PHP captcha kita.
<?php
session_start();
if(isset($_POST['submit'])) {
    if(isset($_POST['captcha_code']) && isset($_SESSION['captcha_code'])) {
        if(md5($_POST['captcha_code']) == $_SESSION['captcha_code']) {
            echo 'Result: CAPTCHA code correct.<br />';
        }else{
            echo 'Result: CAPTCHA code incorrect.<br />';
        }
    }else{
        if(!isset($_POST['captcha_code'])) {
            echo 'Result: No security code was entered.<br />';
        }
        if(!isset($_SESSION['captcha_code'])) {
            echo 'Result: No CAPTCHA was viewed.<br />';
        }
    }
}
?>
<form method="POST">
<img src="captcha.php" />
<br />
Enter the above text EXACTALY as it appears. Note: It is case sensitive<br />
<input type="text" name="captcha_code" />
<br />
<input type="submit" name="submit" value="Submit" />
</form>

Sumber :
http://prothelon.com/mambo/membuat-captcha-dengan-php-bag-2.html

Membuat captcha dengan PHP tidak terlalu sulit. Beberapa waktu yang lalu salah seorang pengunjung bernama Wahyu inigin tahu cara membuat authentication code seperti saat add friend di Facebook. Pengen tahu caranya? Ya.. dengan captcha.


Captcha merupakan kependekan dari "Completely Automated Public Turing test to tell Computers and Humans Apart", atau gampangnya agar robot/script otomatis tidak akan bisa mengisi form. Contoh kegunaannya adalah agar pengisian form atau comment tidak bisa otomatis.
Mula-mula, kita akan membuat sebuah script PHP yang akan membuat output dan mengubahnya menjadi gambar Captcha, dan kita namai captcha.php. Isi scriptnya seperti ini:


<?php
session_start();
$width = 140;
$height = 70;
$im = imagecreate($width, $height);
$bg = imagecolorallocate($im, 0, 0, 0);
// generate random string
$len = 5;
$chars = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
$string = '';
for ($i = 0; $i < $len; $i++) {
    $pos = rand(0, strlen($chars)-1);
    $string .= $chars{$pos};
}
$_SESSION['captcha_code'] = md5($string);
// grid
$grid_color = imagecolorallocate($im, 175, 0, 0);
$number_to_loop = ceil($width / 20);
for($i = 0; $i < $number_to_loop; $i++) {
    $x = ($i + 1) * 20;
    imageline($im, $x, 0, $x, $height, $grid_color);
}
$number_to_loop = ceil($height / 10);
for($i = 0; $i < $number_to_loop; $i++) {
    $y = ($i + 1) * 10;
    imageline($im, 0, $y, $width, $y, $grid_color);
}
// random lines
$line_color = imagecolorallocate($im, 130, 0, 0);
for($i = 0; $i < 30; $i++) {
    $rand_x_1 = rand(0, $width - 1);
    $rand_x_2 = rand(0, $width - 1);
    $rand_y_1 = rand(0, $height - 1);
    $rand_y_2 = rand(0, $height - 1);
    imageline($im, $rand_x_1, $rand_y_1, $rand_x_2, $rand_y_2, $line_color);
}
// write the text
$text_color = imagecolorallocate($im, 255, 0, 0);
$rand_x = rand(0, $width - 50);
$rand_y = rand(0, $height - 15);
imagestring($im, 10, $rand_x, $rand_y, $string, $text_color);
header ("Content-type: image/png");
imagepng($im);
?>

 

Sumber :
http://prothelon.com/mambo/membuat-captcha-dengan-php-bag-1.html

Captcha itu harfiahnya “Completely Automated Public Turing test to tell Computers and Humans Apart” ( dari Wikipedia ). Dibuat untuk membedakan antara mesin ( bot ) dan manusia. Captcha dibuat untuk melakukan validasi input pada website2 yang mempersilahkan pengunjung memberikan inputan baik berupa komentar, shoutout, kotak pendaftaran, atau apapun dimana pengunjung menginputkan sesuatu.

Captcha = Gambar Samar2
Simpelnya, Captcha merupakan sebuah gambar (image) yang berisi Angka / Teks atau kombinasi Angka & teks yang disamar2kan bentuk & rupanya sehingga memerlukan ketelitian dari pengunjung / orang yang ingin melakukan inputan data disebuah website.

Menambahkan Captcha pada website kita

Cara yang pertama adalah dengan download library Captcha dari thecaptcha.com Kita tinggal menambahkan librarynya dan disisipkan dengan website kita.

Cara yang kedua adalah dengan membuat PHP Captcha kita sendiri. Kode ini saya dapat dari somewhere setelah googling2. Eh ga taunya baru tau kalo di rumahweb.com tutorial kayak gini udah pernah ditulis. Jadi klo mau lebih detail boleh liat ke situsnya.

Cara Kerjanya:

Nah, cara kerjanya adalah bermain2 dengan session,  pada saat form pendaftaran di Load, maka dibuatkan String Random dari MD5 yang diambil 5 digit pertamanya. Kemudian string itu disimpen di SESSION, Dari String itu dibuatkan Image dengan menggunakan GDLIbrary bawaan dari PHP dan ditampilkan di halaman Form tersebut. Pada saat User Submit String tersebut, dilakukan pengecekan dengan Session yang sudah tersimpan sebelumnya.

image


File: php_captcha.php

<?php

session_start();
$RandomStr = md5(microtime());// md5 to generate the random string
$ResultStr = substr($RandomStr,0,5);//trim 5 digit
$NewImage =imagecreatefromjpeg("img.jpg");//image create by existing image and as back ground

$LineColor = imagecolorallocate($NewImage,233,239,239);//line color
$TextColor = imagecolorallocate($NewImage, 255, 255, 255);//text color-white

imageline($NewImage,1,1,40,40,$LineColor);//create line 1 on image
imageline($NewImage,1,100,60,0,$LineColor);//create line 2 on image
imageline($NewImage,5, 1, 200, 50, $LineColor);

imagestring($NewImage, 5, 15, 5, $ResultStr, $TextColor);// Draw a random string horizontally

$_SESSION['key'] = $ResultStr;// carry the data through session
header("Content-type: image/jpeg");// out out the image
imagejpeg($NewImage);//Output image to browser

?>

File: form.php

<?php

session_start();


?>

<html>
<head>
<title>PHP-CAPTCHA </title>
</head>
<body onload="return focuson();">
<script   language="javascript">
function focuson()
{ document.form1.number.focus()}

function check()
{
if(document.form1.number.value==0)
{
alert("Please enter your Category Name");
document.form1.number.focus();
return false;
}
}

</script>


<?php

if(isset($_REQUEST['Submit'])){
$key=substr($_SESSION['key'],0,5);
$number = $_REQUEST['number'];
if($number!=$key){
echo '<center><font face="Verdana, Arial, Helvetica, sans-serif" color="#FF0000">
Validation string not valid! Please try again!</font></center>';}
else{
echo '<center><font face="Verdana, Arial, Helvetica, sans-serif"  color="#66CC00">
Your string is valid!</font></center>';}
}


?>

<form name="form1" method="post" action="form.php"  onsubmit="return check();">
<img src="php_captcha.php" /></td>
<input name="number" type="text" id="number" /></td>
<input name="Submit" type="submit"   value="Submit" /></td>
</form>
</body>
</html>
 
 

Sumber :
http://irfanroom.wordpress.com/2008/01/22/membuat-php-captcha-sendiri/

CREATE TABLE tabelQuotes
(
id     int,
quote  text,
primary key(id)
);

----------------------------------------------------------------------------------------------

insert  into tabelquotes values
(1, 'Hari ini harus lebih baik dari kemarin'),
(2, 'Jangan tunda sampai besok apa yang bisa kalian
kerjakan hari ini'),
(3, 'Ingin investasi dunia akhirat? Sharinglah ilmu yang
Anda miliki dengan yang lain'),
(4, 'Ilmu lebih baik dari harta. Apabila Anda memiliki harta,
maka Andalah penjaganya. Namun jika Anda memiliki ilmu,
maka ilmulah yang akan menjaga Anda.');

----------------------------------------------------------------------------------------------

&lt;?php
mysql_connect("host", "user", "pass");
mysql_select_db("dbname");
$query = "SELECT * FROM tabelQuotes ORDER BY RAND()";
$hasil = mysql_query($query);
$data  = mysql_fetch_array($hasil);
{
echo "Pesan saat ini : ".$data['quote'];
}
?&gt;

----------------------------------------------------------------------------------------------

&lt;?php
mysql_connect("host", "user", "pass");
mysql_select_db("dbname");
$query = "SELECT * FROM tabelQuotes ORDER BY RAND() LIMIT 2";
$hasil = mysql_query($query);
while ($data  = mysql_fetch_array($hasil))
{
echo "Pesan saat ini : ".$data['quote']."&lt;br&gt;";
}
?&gt;

image Cokelat biasanya di konsumsi sebagai camilan. Namun kandungan gizi di dalam cokelat seperti antioksidan dapat mencegal sel kulit mengalami penuaan. Selain itu cokelat juga bisa mengangkat sel-sel kulit yang mati.

Ada tiga jenis perawatan dari cokelat yang bisa Anda buat sendiri. Caranya mudah kok, Ini dia!

  1. Masker Cokelat untuk Wajah

    Bahan-bahan :
    Dark Chocolate
    Susu Full Cream
    Garam

    Cara Membuat :
    Pertama-tama tim dark chocolate, lalu campurrkan dengan garam dan susu full cream dan aduk hingga rata. Dinginkan dngan suhu kamar 10-15 menit lalu oleskan merata di wajah Anda.

  2. Masker Cokelat Madu untuk Wajah

    Bahan-bahan :
    Dark Chocolate
    Mentega
    Madu
    Gula

    Cara Membuat :
    Sama seperti sebelumnya, cairkan cokelat dengan cara di tim, lalu campurkan dengan bahan yang lain. dulah hingga rata dan diamkan selama 10-15 menit hingga dingin. Oleskan merata di wajah.

  3. Sabun Mandi Cokelat

    Bahan-bahan :
    Dark Cocholate
    Sabun Mandi cair tanpa aroma
    Susu Full Cream cair

    Cara Membuat :
    Panaskan susu full cream lalu masukkan irisan cokelat kedalamnya, aduk hingga cokelat mencair dan tercampur rata. Siapkan bathub Anda lalu tuangkan adonan susu cokelat. Campurkan dengan sabun mandi cair, lalu diamkan sampa bath tub Anda berbusa.

Tips untuk rangkaian perawatan kulit dengan cokelat ini baik dilakukan saat weekend untuk bersantai dan jangan lupa dibilas sampai bersih ya. Selamat mencoba!


Sumber :
http://www.benih.net/lifestyle/gaya-hidup/kulit-cantik-dengan-cokelat.html

Cokelat merupakan makanan yang digemari segala usia mulai dari anak-anak sampai orang tua. Tidak hanya dalam bentuk cokelat batangan, cokelat juga banyak diaplikasikan dalam beragam makanan mulai dari cake, biskuit, permen, ice cream, minuman dll. Selain rasanya yang enak, cokelat juga sering diasosiasikan dengan produk bernilai tinggi/mahal sehingga sering dijadikan sebagai hadiah.

Cokelat dihasilkan melalui serangkaian proses dari biji kakao. Biji kakao ini berasal dari tanaman kakao, Theobroma cacao, yang tumbuh hanya di daerah tropis. Pantai Gading di Afrika Barat dikenal sebagai penghasil biji kakao terbesar di dunia. Dalam bahasa Yunani, theobroma berarti makanan para dewa. Dalam kebudayaan Meso Amerika, biji kakao bernilai sangat tinggi sehingga dijadikan sebagai mata uang.

Asal Muasal Istilah Cokelat

Istilah ˜cokelat”  itu sendiri berasal dari xocolatl (bahasa suku Aztec) yang berarti minuman pahit. Pada awalnya, cokelat dikonsumsi sebagai minuman yang dibuat berbuih, kadang-kadang ditaburi lada merah, vanilla, madu atau rempah-rempah lain. Rasanya pahit, sepat dan berlemak. Konsumsi cokelat masa itu dianggap sebagai simbol status penting dan juga kemakmuran. Cokelat dalam bentuk padat pertama kali ditemukan pada abad ke-18 di Eropa. Penggunaan rempah-rempah dihilangkan dan mulai ditambahkan gula, susu dll.

Antioksidan dalam Cokelat

Pengolahan biji kakao menghasilkan cocoa liquor (cocoa mass), cocoa butter dan cocoa powder. Biji kakao dan turunannya ini merupakan sumber antioksidan polifenol – senyawa yang dapat mengurangi resiko penyakit jantung dengan cara mencegah oksidasi Low Density Lipoproteins (LDL) atau yang sering disebut lemak jahat, sehingga dapat mencegah sumbatan pada dinding-dinding pembuluh darah arteri. Kandungan antioksidan bervariasi pada setiap cokelat, tergantung pada berbagai faktor di antaranya kandungan cocoa dan proses pengolahan. Secara umum, cocoa powder dan dark chocolate mengandung antioksidan dalam jumlah yang lebih tinggi daripada milk chocolate. Berikut kandungan antioksidan polifenol dalam beberapa produk :

  • Milk chocolate (50g) – 100 mg polifenol
  • Dark chocolate (50g) – 300 mg polifenol
  • Red wine (140mL) – 170 mg polifenol
  • Tea (240mL) – 400 mg polifenol
  • Cocoa powder (16g) – 200 mg polifenol
  • Beberapa Mitos dan Fakta Seputar Cokelat

    Fungsi dan pengaruh komponen-komponen aktif yang terkandung dalam cokelat menjadi bahan penelitian yang menarik dari tahun ke tahun dan sampai saat ini penelitian tentang cokelat terus berlangsung. Beberapa mitos yang sudah dapat dibuktikan tidak benar adalah :

    1. Cokelat dapat menyebabkan timbulnya jerawat
      Para ahli yakin bahwa timbulnya jerawat lebih dipengaruhi oleh stres dan hormon yang menyebabkan kondisi kulit mengalami berlebihnya aktivitas jaringan minyak.
    2. Cokelat menyebabkan kecanduan
      Tidak ada penelitian yang dapat membuktikan bahwa cokelat termasuk dalam jenis bahan adiktif. Orang yang sangat menggemari cokelat kemungkinan disebabkan oleh sifat sensori cokelat yang khas: tekstur yang mudah mencair di dalam mulut dan rasa/aroma yang enak. Cokelat mengandung lebih dari 300 jenis flavor yang berbeda, tanpa ada jenis yang paling dominan. Kegemaran akan cokelat kemungkinan juga disebabkan karena cokelat menstimulasi pelepasan endorphins – senyawa dalam otak yang dapat mengurangi rasa sakit dan membangkitkan perasaan euforia (perasaan gembira/bahagia).
    3. Cokelat merupakan penyebab sakit kepala (migren)
      Penelitian yang dilakukan di Pittsburgh State University terhadap 63 wanita menunjukkan bahwa cokelat bukan merupakan pemicu terjadinya sakit kepala. Timbulnya migren lebih dihubungkan dengan keadaan hormon dalam tubuh.
    4. Cokelat menyebabkan obesitas
      Para ahli gizi berpendapat bahwa tidak ada sesuatu makanan pun yang dapat menyebabkan kegemukan. Berat badan seseorang bertambah ketika kalori yang masuk ke dalam tubuh lebih besar daripada kalori yang dibuang/dikeluarkan melalui aktifitas fisik. Penelitian yang dilakukan pada asupan diet rata-rata di Amerika menunjukkan bahwa cokelat hanya berkontribusi 0,7 – 1,0% dari total kalori. Oleh karena itu, tetap dianjurkan untuk mengontrol jumlah asupan kalori dan yang terbuang.

    Fakta lain adalah cokelat hanya mengandung sejumlah kecil kafein. Jumlah ini jauh lebih kecil bila dibandingkan dengan kandungan kafein di dalam kopi dan teh. Suatu senyawa yang mirip dengan kafein ditemukan dalam cokelat yaitu Theobromine. Theobromine juga berfungsi sebagai stimulan, seperti halnya kafein tetapi pengaruh dan sifat yang diberikan berbeda. Theobromine hanya ditemukan dalam biji kakao dan produk-produk turunannya.

    Beberapa manfaat cokelat dalam dunia pengobatan masih menjadi bahan penelitian di dunia saat ini. Di antaranya adalah :

    1. Mengobati batuk
      Theobromine dalam cokelat disinyalir berfungsi menyembuhkan batuk secara lebih baik dibandingkan obat batuk.
    2. Mengurangi resiko stroke
      Penelitian dari Universitas California mengungkapkan bahwa cokelat memiliki pengaruh yang sama dengan aspirin sebagai anti pembekuan darah. Cokelat membantu mencegah pembekuan darah, sehingga mengurangi resiko terjadinya stroke.
    3. Mencegah tekanan darah tinggi
      Senyawa flavanol (antioksidan) dalam cokelat diindikasikan dapat membantu mencegah tekanan darah tinggi.

    Cokelat Tingkatkan Daya Fungsi Otak

    Para pencinta cokelat bergembiralah, karena hasil penelitian terkini mengindikasikan menikmati batangan cokelat susu akan meningkatkan daya fungsi otak.

    “Coklat mengandung banyak unsur yang bersifat menjadi stimulan antara lain theobromine, phenethylamine, dan kaffeine,” kata Bryan Raudenbush dari Universitas Wheeling Jesuit di West Virginia.

    Senyawa-senyawa itu telah ditemukan sebelumnya bersifat meningkatkan tingkat kesadaran dan kemampuan berkonsentrasi. Hasil penelitian menunjukkan, dengan mengonsumsi coklat dapat memperoleh efek stimulasi yang akan membuat peningkatan performa mental. Raudenbush dan rekan-rekannya mengatakan penelitian efek kemampuan otak dilakukan terhadap sejumlah relawan yang mengonsumsi cokelat dalam beberapa jenis. Penelitian ini dalam empat kejadian terpisah yaitu kelompok pertama mengkonsumsi 85 gram batangan cokelat susu, 85 gram cokelat hitam, 85 gram carob, dan kelompok keempat tidak mengonsumsi apapun. Setelah 15 menit berselang para relawan dalam penelitian ini menjalani beberapa tes neuropsikologis yang didesain untuk melihat performa kognitif. Termasuk daya ingat, daya konsentrasi, kemampuan bereaksi dan kemampuan memecahkan masalah.

    “Nilai bagi daya ingat verbal maupun visual tertinggi bagi mereka yang masuk kelompok mengonsumsi batangan coklat susu dibandingkan dengan ketiga kelompok lainnya,” kata Raudenbush.

    Peningkatan daya ingat baik verbal dan visual juga terjadi di kelompok yang mengonsumsi jenis cokelat lainnya namun hasilnya berada di bawah kelompok pertama. Dari penelitian sebelumnya telah diketahui beberapa nutrisi dalam makanan tambahan melepas glukose yang menambah aliran darah yang dapat berpengaruh bagi kemampuan kognitif. Hasil penemuan terkini mendukung pendapat sebelumnya bahkan memperjelas, mengonsumsi cokelat dapat meningkatkan kinerja daya kerja otak.

    Coklat sebagai pengganti Viagra

    Dr. Dora Akunyili, direktur Federal Agency Food and Medicine, menganjurkan para pria lebih sedikit demi sedikit mengurangi ketergantungan pada viagra. Dan, memulai mengkonsumsi coklat. Zat yang dikandung Coklat membantu menaikkan libido. Secara ekonomi mengkonsumsi coklat untuk meningkatkan kemampuan seks lebih menghemat isi kantong daripada viagra. Warga Inggris, tampaknya telah mengetahui sejak lama bila coklat memiliki efek ampuh bagi pria saat bercinta. Di Inggris adalah coklat merupakan makanan wajib.

    Akunyili mengungkapkan coklat adalah produk “cinta” yang lebih baik dibanding viagra. Viagra bisa menimbulkan efek yang tidak diinginkan. Tapi coklat belum terbukti memiliki efek samping yang merugikan tubuh. Coklat merupakan antioksidan yang paling baik, dalam membantu mengurangi resiko serangan jantung, darah tinggi, diabetes. “Yang pasti mampu menaikkan libido,” katanya. Coklat juga bagian dari obat penyembuh kanker payudara, batuk kronis dan meningkatkan kinerja otak. Mengapa coklat bisa seefektif viagra? Dalam laporannya Akunyili seperti dikutip foodnavigator.com dijelaskan coklat mengandung 300 zat kimia. Kafein dalam jumlah kecil, teobromin, dan sebuah stimulan yang disebut phenylethylamine (yang terkait dengan amphetamines) juga terkandung pada coklat. Zat terakhir adalah kimia alam yang terbukti mampu menaikkan minat dan fungsi seksual.

    Coklat dan Kesehatan

    Dengan mengontrol aktivitas fisik yang dilakukan, kebiasaan merokok, dan kebiasaan makan ditemukan bahwa mereka yang suka makan permen/coklat umurnya lebih lama satu tahun dibandingkan bukan pemakan. Diduga antioksidan fenol yang terkandung dalam coklat adalah penyebab mengapa mereka bisa berusia lebih panjang. Fenol ini juga banyak ditemukan pada anggur merah yang sudah sangat dikenal sebagai minuman yang baik untuk kesehatan jantung. Coklat mempunyai kemampuan untuk menghambat oksidasi kolesterol LDL (kolesterol jahat) dan meningkatkan fungsi kekebalan tubuh, sehingga dapat mencegah risiko penyakit jantung koroner dan kanker.

    Selama ini ada pandangan bahwa permen coklat menyebabkan caries pada gigi dan mungkin juga bertanggung jawab terhadap munculnya masalah kegemukan. Tak dapat disangkal lagi bahwa kegemukan adalah salah satu faktor risiko berbagai penyakit degeneratif. Tetapi studi di Universitas Harvard ini menunjukkan bahwa jika Anda mengimbangi konsumsi permen coklat dengan aktivitas fisik yang cukup dan makan dengan menu seimbang, maka dampak negatip permen coklat tidak perlu terlalu dikhawatirkan.

    Menurut kepercayaan suku Maya, coklat adalah makanan para dewa. Rasa asli biji coklat sebenarnya pahit akibat kandungan alkaloid, tetapi setelah melalui rekayasa proses dapat dihasilkan coklat sebagai makanan yang disukai oleh siapapun. Biji coklat mengandung lemak 31%, karbohidrat 14% dan protein 9%. Protein coklat kaya akan asam amino triptofan, fenilalanin, dan tyrosin. Meski coklat mengandung lemak tinggi namun relatif tidak mudah tengik karena coklat juga mengandung polifenol (6%) yang berfungsi sebagai antioksidan pencegah ketengikan.

    Di Amerika Serikat konsumsi coklat hanya memberikan kontribusi 1% terhadap intake lemak total sebagaimana dinyatakan oleh National Food Consumption Survey (1987-1998). Jumlah ini relatif sedikit khususnya bila dibandingkan dengan kontribusi daging (30%), serealia (22%), dan susu (20%). Lemak pada coklat, sering disebut cocoa butter, sebagian besar tersusun dari lemak jenuh (60%) khususnya stearat. Tetapi lemak coklat adalah lemak nabati yang sama sekali tidak mengandung kolesterol. Untuk tetap menekan lemak jenuh agar tidak terlalu tinggi, ada baiknya membatasi memakan cokelat hanya satu batang saja per hari dan mebatasi mengkonsumsi suplement atau makanan lainnya yang mengandung catechin seperti apple dan teh.

    Dalam penelitian yang melibatkan subyek manusia, ditemukan bahwa konsumsi lemak coklat menghasilkan kolesterol total dan kolesterol LDL yang lebih rendah dibandingkan konsumsi mentega ataupun lemak sapi. Jadi meski sama-sama mengandung lemak jenuh tetapi ternyata efek kolesterol yang dihasilkan berbeda. Kandungan stearat yang tinggi pada coklat disinyalir menjadi penyebab mengapa lemak coklat tidak sejahat lemak hewan. Telah sejak lama diketahui bahwa stearat adalah asam lemak netral yang tidak akan memicu kolesterol darah. Mengapa? Stearat ternyata dicerna secara lambat oleh tubuh kita dan juga diabsorpsi lebih sedikit.

    Sepertiga lemak yang terdapat dalam coklat adalah asam oleat yaitu asam lemak tak jenuh. Asam oleat ini juga dominan ditemukan pada minyak zaitun. Studi epidemiologis pada penduduk Mediterania yang banyak mengkonsumsi asam oleat dari minyak zaitun menyimpulkan efek positip oleat bagi kesehatan jantung.

    Sering timbul pertanyaan seberapa banyak kita boleh mengkonsusmi coklat? Tidak ada anjuran gizi yang pasti untuk ini, namun demikian makan coklat 2-3 kali seminggu atau minum susu coklat tiap hari kiranya masih dapat diterima. Prinsip gizi sebenarnya mudah yaitu makanlah segala jenis makanan secara moderat. Masalah gizi umumnya timbul bila kita makan terlalu banyak atau terlalu sedikit.

    Makan coklat tidak akan menimbulkan kecanduan, tetapi bagi sebagian orang rasa coklat yang enak mungkin menyebabkan kerinduan untuk mengkonsumsinya kembali. Ini yang disebut chocolate craving. Dampak coklat terhadap perilaku dan suasana hati (mood) terkait erat dengan chocolate craving. Rindu coklat bisa karena aromanya, teksturnya, manis-pahitnya dsb. Hal ini juga sering dikaitkan dengan kandungan phenylethylamine yang adalah suatu substansi mirip amphetanine yang dapat meningkatkan serapan triptofan ke dalam otak yang kemudian pada gilirannya menghasilkan dopamine. Dampak dopamine adalah muncul perasaan senang dan perbaikan suasana hati. Phenylethylamine juga dianggap mempunyai khasiat aphrodisiac yang memunculkan perasaan seperti orang sedang jatuh cinta (hati berbunga). Konon Raja Montezuma di jaman dahulu selalu mabuk minuman coklat sebelum menggilir harem-haremnya yang berbeda setiap malam.

    Katekin adalah antioksidan kuat yang terkandung dalam coklat. Salah satu fungsi antioksidan adalah mencegah penuaan dini yang bisa terjadi karena polusi ataupun radiasi. Katekin juga dijumpai pada teh meski jumlahnya tidak setinggi pada coklat. Orang tua jaman dahulu sering mempraktekkan cuci muka dengan air teh karena dapat membuat kulit muka bercahaya dan awet muda. Seandainya mereka tahu bahwa coklat mengandung katekin lebih tinggi daripada teh, mungkin mereka akan menganjurkan mandi lulur dengan coklat.

    Coklat juga mengandung theobromine dan kafein. Kedua substansi ini telah dikenal memberikan efek terjaga bagi yang mengkonsumsinya. Oleh karena itu ketika kita terkantuk-kantuk di bandara atau menunggu antrian panjang, makan coklat cukup manjur untuk membuat kita bergairah kembali.

    Produk coklat cukup beraneka ragam. Misalnya, ada coklat susu yang merupakan adonan coklat manis, cocoa butter, gula dan susu. Selain itu ada pula coklat pahit yang merupakan coklat alami dan mengandung 43% padatan coklat. Coklat jenis ini bisa ditemukan pada beberapa produk coklat batangan. Kandungan gizi coklat bisa dilihat pada tabel.

    Zat Gizi Coklat Susu Coklat Pahit
    Energi (Kal) 381 504
    Protein (g) 9 5,5
    Lemak (g) 35,9 52,9

    Kalsium (mg)

    200 98

    Fosfor (mg)

    200 446
    Vit A (SI) 30 60
     
    Belum ada bukti bahwa coklat menimbulkan jerawat. Coklat juga tidak bisa dikatakan sebagai penyebab utama munculnya plaque gigi karena plaque gigi juga bisa timbul pada orang yang mengkonsumsi makanan biasa sehari-hari. Hanya saja coklat perlu diwaspadai, khususnya bagi orang-orang yang rentan menderita batu ginjal. Konsumsi 100 g coklat akan meningkatkan ekskresi oksalat dan kalsium tiga kali lipat. Oleh karena itu kiat sehat yang bisa dianjurkan adalah minumlah banyak air sehabis makan coklat.

    Sumber :
    http://zyanti.wordpress.com/2009/05/18/serba-serbi-tentang-cokelat/
    http://www.ot.co.id
    http://tips-sehatku.blogspot.com
    http://www.benih.net
    http://artikle.wordpress.com

    image Untuk bisa tahan lama, mayoritas kaum adam mempercayakan pada makanan suplemen. Bisa berupa obat kuat atau mengkonsumsi makanan yang dipercaya mampu meningkatkan libido dan berdaya tahan lama.

    Pernahkah Anda membayangkan bila makanan kesukaan wanita, coklat juga memiliki kemampuan setara viagra? Tampaknya kaum pria perlu juga lebih sering mengkonsumsi makanan yang seringkali sebagai hadiah bagi wanita yang disayangi itu.

    Dr. Dora Akunyili, direktur Federal Agency Food and Medicine, menganjurkan para pria lebih sedikit demi sedikit mengurangi ketergantungan pada viagra. Dan, memulai mengkonsumsi coklat. Zat yang dikandung Coklat membantu menaikkan libido.

    Secara ekonomi mengkonsumsi coklat untuk meningkatkan kemampuan seks lebih menghemat isi kantong daripada viagra.

    Warga Inggris, tampaknya telah mengetahui sejak lama bila coklat memiliki efek ampuh bagi pria saat bercinta. Di Inggris adalah coklat merupakan makanan wajib.

    Akunyili mengungkapkan coklat adalah produk ‘cinta’ yang lebih baik dibanding viagra. Viagra bisa menimbulkan efek yang tidak diinginkan. Tapi coklat belum terbukti memiliki efek samping yang merugikan tubuh. Coklat merupakan antioksidan yang paling baik, dalam membantu mengurangi resiko serangan jantung, darah tinggi, diabetes. “Yang pasti mampu menaikkan libido,” katanya.

    Coklat juga bagian dari obat penyembuh kanker payudara, batuk kronis dan meningkatkan kinerja otak.

    Mengapa coklat bisa seefektif viagra? Dalam laporannya Akunyili seperti dikutip foodnavigator.com dijelaskan coklat mengandung 300 zat kimia. Kafein dalam jumlah kecil, teobromin, dan sebuah stimulan yang disebut phenylethylamine (yang terkait dengan amphetamines) juga terkandung pada coklat. Zat terakhir adalah kimia alam yang terbukti mampu menaikkan minat dan fungsi seksual.


    Sumber :
    http://www.benih.net/lifestyle/gaya-hidup/coklat-juga-setangguh-viagra.html

    image Membangun kerajaan bisnis sendiri mungkin jadi dambaan bagi banyak orang. Namun memulai sebuah usaha tidaklah semudah membalikan tangan. Ada hal-hal yang harus dipersiapkan, direncanakan dan dilaksanakan dengan ketekunan. Simak beberapa tips tentang bagaimana mempersiapkan membuka usaha sendiri berikut ini.

    Melakukan Penelitian Pasar

    Penelitian merupakan hal integral dalam membangun bisnis. Lakukan penelitian di pasar dan tentukan siapa konsumen Anda. Tentukan mana yang akan jadi sasaran utama Anda atau konsumen Anda jadi lebih kecil. Pahami perbedaan antara pasar dan dimana Anda dapat meraih pelanggan.

    Pilih Patner Yang Tepat

    ika Anda akan mencari rekan kerja, pastikan Anda sudah memilih yang tepat. Anda ingin seorang rekan kerja yang memiliki latar belakang bisnis atau pengarah bisnis. Beberapa pengalaman manajemen juga lebih disukai. Jika Anda ingin rekan kerja yang memenuhi latar belakang financial, mereka perlu memiliki kredit yang bagus atau kemampuan untuk menawarkan dukungan financial.

    Jaminan Keuangan

    Keuangan dapat jadi tantangan terbesar, tapi ada beberapa jenis pilihan yang tersedia untuk mendapatkan modal usaha. Ada dapat memilih ikut program pemerintah dalam membangun usaha kecil. Anda bisa mulai mengajukan pinjaman pada bank yang menangani usaha kecil dan mendapatkan pinjaman berjumlah kecil. Atau Anda bisa mengambil pinjaman pribadi di bank. Pilihan lain adalah mencari rekanan yang mau berinvestasi untuk memulai usaha bersama.

    Ciptakan Image Atau Posisi Penjualan Yang Unik

    Mulai dengan membangun keberadaan Anda, branding image Anda di public dan para pelanggan Ikatan ini masuk dalam posisi penjualan. Kembangkan tagline Anda dan temukan angel yang tepat yang mengena pada produk atau pelayanan tertuju pada pelanggan. Ciptakan sebuah image yang membuat Anda terpercaya di mata pelanggan Anda.

    Berhenti Berpikir Mendapat Laba Secepat Kilat

    Sangat, sangat jarang ada bisnis yang sukses dalam semalam. Kebanyakan bisnis membutuhkan waktu dan usaha, bahkan untuk mulai melihat hasilnya. Saat Anda memahami ini dan Anda tak seharusnya menaruh pengharapan secara berlebihan atau yang tak realistis. Persiapkan usaha, pengorbanan dan bahkan kemungkinan mengalami kerugian. Anda tak akan jadi kaya raya hanya dalam semalam, tapi Anda dapat membangun sebuah usaha yang menguntungkan secara bertahap.


    Sumber :
    http://www.benih.net/lifestyle/gaya-hidup/langkah-bangun-bisnis-sendiri.html

    image Sebelum mengetim cokelat, pastikan wadah, pisau, sendok atau alas untuk memotong cokelat benar-benar kering, bebas dari minyak dan air.

    1. Jika terkena noda air dan minyak,cokelat akan mudah bergumpal.
    2. Potong-potong cokelat blok dalam ukuran kecil lalu taruh dalam wadah bersih dan kering.
    3. Didihkan air dengan api kecil di dalam wadah atau panci lain yang ukurannya lebih besar.
    4. Taruh wadah berisi cokelat ke dalam panci berisi air hingga setengah tinggi wadah terendam air.
    5. Matikan api atau kecikan api, aduk-aduk cokelat dengan sendok bersih dan kering hingga leleh lalu angkat.
    6. Lanjutkan mengaduk hingga cokelat benar-benar leleh dan licin.

    Sumber :
    http://www.rajaresep.com/berita-287-tips-mengetim-coklat.html

    Berilah perlakuan istimewa pada cokelat Anda, maka ia akan tahan lama, tanpa perubahan signifikan pada citarasa dan aromanya. Berikut ini tips menyimpan cokelat bagi Anda:

    Simpan di tempat yang kering dan sejuk, dengan suhu Ç16-18ºC. Bila Anda menyimpannya dalam suhu di bawah 13ºC, biasanya akan timbul “sugar bloom” (bercak putih karena pengkristalan gula dalam cokelat)  dan akan berkeringat bila ditempatkan di suhu ruangan. Sebaliknya, bila disimpan dalam suhu terlalu tinggi, akan menyebabkan “fat bloom” (perubahan komposisi lemak karena panas)—indikasinya permukaan cokelat terlihat sangat berminyak dan lengket.

    Bila pembungkusnya sudah dibuka, rapatkan kembali agar Çtidak ada udara yang masuk. Hindari menyimpan cokelat di dalam kulkas, kecuali Anda Çtidak mempunyai ruangan ber AC. Cokelat yang disimpan dengan baik akan tahan selama sekitar satu tahun. Dalam kurun waktu penyimpanan ini, cokelat Anda mungkin sudah mengalami p “bloom” tetapi tidak menimbulkan efek signifikan pada citarasanya. Jadi, Anda masih bisa melelehkan dan mengaplikasikan pada resep Anda, asalkan belum melampaui tanggal kadaluwarsa.

    Ada beberapa hal yang bisa kita temukan di MS SQL Server 2005, diantaranya adalah :
















    SQL Server Database Services

    Terdiri dari komponen-komponen :
    -

    -




    -
    Database Engine
    merupakan jantung dari SQL Server
    Replikasi
    meningkatkan ketersediaan data dengan mendiistribusikan data  melintasi beberapa database, memungkinkan penyebaran beban kerja untuk akses data ke beberapa server database.
    Full-text search
    memungkinkan query-query menggunakan bahasa non-komputer terhadap data yang disimpan di dalam tabel-tabel SQL Server.

    Analysis Services (Online Analytical Processing – OLAP)
    fasilitas ini memungkinkan organisasi mengagregasi data dari beberapa sumber data.

    Data Integration Services
    transformasi data dan solusi integrasi untuk mengekstrak dan mentransformasikan data dari berbagai sumber data dan memindahkannya ke satu tujuan atau lebih.

    Notification Services
    untuk menghasilkan dan mengirimkan pesan-pesan yang dipersonalisasikan pada waktu yang tepat kepada pengguna-pengguna ketika sebuah peristiwa pemicu (triggering event) terjadi.

    Reporting Services
    meliputi Report Manager dan Report Server, untuk menghasilkan, mengelola dan mendistribusikan laporan-laporan.

    Service Broker
    terdiri dari :
    Queue (antrian), digunakan untuk menumpuk pekerjaan, seperti query-query dan permintaan lainnya.
    Messaging, memungkinkan aplikasi-aplikasi database berkomunikasi satu sama lain.

    Microsoft SQL Server 2005 dan perangkat keras

    Administrasi server database akan berhasil bergantung pada 3 hal, yaitu :
    1. Administrator database yang baik
    2. Arsitektur  database yang kuat
    3. Perangkat keras yang sesuai
    Pada pemilihan perangkat keras untuk SQL Server, ada beberapa prinsip penting yang harus diperhatikan, yaitu :



    1. Memori
      SQL Server 2005 membutuhkan minimal RAM 512 MB untuk Standard Edition dan untuk Enterprise Edition membutuhkan RAM 1 GB untuk edisi 64-bit. Disarankan untuk memiliki minimal dua kali lipat memori minimum yang disarankan karena ini akan mempengaruhi kinerja.

      Fitur-fitur database tambahan seperti Analysis Services, Reporting Services dan Notification Servicces masing-masing membutuhkan tambahan memori sekitar 30 MB.

      Untuk menjalankan management studio pada SQL Server akan menggunakan minimal RAM 50 MB sampai 60 MB.

      Koneksi user mengkonsumsi memori sebesar sekitar 24 KB per koneksi.



    2. CPU
      SQL Server 2005 versi 32-bit bisa dijalankan dengan prosesor Intel x86 atau perangkat keras yang kompatibel. Sedangkan untuk versi 64-bit bisa dijalankan dengan prosesor Intel Itanium (IA-64) dan keluarga prosesor X64 dari AMD dan Intel, termasuk AMD64 dan Intel Extended Memory 64 Technology (Intel EM64T).

      SQL Server menyediakan kinerja benchmark yang solid dengan prosesor Intel Xeon 3.66 GHz, Intel Itanium 21.6 GHz, AMD Opteron 2.6 GHz dan AMD Athlon 2.6 GHz.
      Semua CPU ini menyediakan titik awal yang baik untuk rata-rata sistem SQL Server. Untuk meningkatkan kinerja yang signifikan dapat dicapai dengan cache prosesor yang tinggi. Harap diperhatikan opsi-opsi cache L1, L2 dan L3 yang tersedia, karena semakin tinggi cache maka akan meningkatkan kinerja keseluruhan yang jauh lebih baik.

      Keuntungan pprosesor 64-bit dibandingkan prosesor 32-bit berkaitan dengan pembatasan memori dan akses data. Prosesor 64-bit bisa melampaui batas memori 4-GB dibanding prosesor 32-bit. Prosesor 64-bit bisa menyimpan lebih banyak data di dalam memori utama, menyediakan akses langsung dan pemrosesan data yang lebih cepat. Prosesor 64-bit bisa memproses data dan mengeksekusi kumpulan instruksi yang besarnya dua kali dari kemampuan proosesor 32-bit. Namun, tidak semua aplikasi sudah dibuat optimal untuk dijalankan pada prosesor 64-bit. Hai ini bisa menimbulkan masalah pada tahap implementasi dan pemeliharaan.



    3. SMP
      SQL Server 2005 mendukung multiprosesor simetris dan bisa memproses query-query paralel yang rumit. Query-query paralel berguna hanya pada saat jumlah user di dalam sistem relatif sedikit dan sedang memproses query yang besar. Pada sebuah sistem yang khusus (dedicated) yang menjalannkan hanya SQL Server dan mendukung kurang dari 100 user/pengguna pada saat bersamaan dan tidak menjalankan query-query yang rumit, maka satu CPU tunggal akan cukup. Jika server mendukung lebih dari 100 pengguna atau tidak bejalan di sebuah sistem yang khusus, mungkin perlu mempertimbangkan penambahan prosesor (atau menggunakan sebuah sistem yang bisa mendukung prosesor tambahan pada saat kebutuhan bertambah).
      Perlu diingat bahwa ukuran dari query-query dan kelompok data yang diproses mempengaruhi ukuran perangkat keras SQL Server yang digunakan. Pada saat volume pekerjaan yang diproses meningkat, akan membutuhkan tambahan memori dan CPU.



    4. Disk Drives
      Jumlah kapasitas penyimpanan data yang diperlukan bergantung sepenuhnya pada jumlah dan ukuran databse yang didukung oleh server. Diperlukan ruang kosong harddisk yang cukup untuk menyimpan semua data ditambah ruang kosong untuk bekerja, indeks-indeks, file-file sistem, memori virtual, log-log transaksi dan quorum disk (jika menggunakan cluster). I/O throughput atau besar input dan output yang bisa ditangani oleh sistem juga sama pentingnya ddengan kapasitas harddisk. Untuk kinerja I/O yang terbaik, direkomendasikan menggunakan FC (Fiber Channel) untuk solusi penyimpanan berkapasitas tinggi.
      Sebaiknya menggunakan harddisk-harddisk yang lebih kecil, yang memungkinkan mengonfigurasi fault tolerance (toleransi pada kegagalan sistem) dengan RAID (redundant array of independent disks). Direkomendasikan untuk memisahkan data dan log-log, yaitu memisahkan keduanya pada harddisk yang berbeda. Ini termasuk quorum disk untuk clustering.



    5. Proteksi pada data
      Penambahan proteksi terhadap kegagalan disk yang tidak terduga dengan menggunakan RAID.
      Untuk data, gunakan RAID 0 atau RAID 5. Untuk log-log, gunakan RAID 1. RAID 0 (disk striping tanpa parity) menawarkan kinerja baca/tulis yang baik, tetapi jika ada disk yang gagal, maka SQL Server tidak bisa melanjutkan operasi pada database yang terkena dampaknya sampai saat disk itu diganti dan data dipulihkan (di-restore) dari backup. RAID 1 (disk mirroring) menciptakan copi duplikat data pada harddisk yang terpisah dan bisa dibangun kembali unit RAID tersebut untuk memulihkan operasi dari sistemm seperti semula.
      RAID 5 (disk striping dengan parity) menawarkan proteksi yang baik terhadap kegagalan satu disk tunggal tetapi mempunyai kinerja tulis yang buruk.
      Untuk kinerja dan fault tolerance yang terbaik, direkomendasikan menggunakan RAID 0 + 1, yang terdiri atas disk mirroring dan disk striping tanpa parity.



    6. Uninterruptible Power Supply (UPS)
      Sebuah sistem UPS memberikan waktu untuk mematikan (shutdown) sistem secara wajar pada saat terjadi pemadaman listrik dan juga penting dalam memelihara integritas database jika server menggunakan write-back caching controllers.

    Edisi Microsoft SQL Server 2005


    SQL Server 2005 didistribusikan dengan 4 edisi utama, yaitu :
    1. Workgroup Edition
    2. Standard Edition
    3. Enterprise Edition
    4. Developer Edition
    5. Mobile Edition
    6. Express Edition

    Workgroup Edition

    Ideal untuk departemen-departemen kecil di perusahaan-perusahaan besar dan untuk bisnis-bisnis kecil yang memerlukan sebuah solusi yang andal, tetapi tidak memmerlukan fitur-fitur business intelligence tambahan.
    Running di berbagai versi sistem operasi Microsoft Windows, termasuk Windows 2000, Windows XP Professional dan Windows Server 2003.
    Untuk semua edisi SQL Server 2005 di Microsoft Windows 2000, harus di-install Service Pack 4 (SP4) atau setelahnya. Pada Windows XP Professional, harus di-install Service Pack 1 (SP1) atau setelahnya.
    Kapasitas database yang tidak terbatas, kapasitas RAM hingga 3 GB, dua CPU untuk multiprosessing simetris, replication publishing yang terbatas dan full-text search.
    Pengiriman log (log shipping), yang memungkinkan SQL Server mengirimkan log-log transaksi dari satu server ke server lain.

    Standard Edition

    Dirancang untuk perusahaan berukuran sedang.
    Running pada berbagai versi sistem operasi Microsoft Windows, termasuk Windows 2000, Windows XP Professsional dan Windows Server 2003.
    Kapasitas database yang tidak terbatas, kapasitas RAM yang tidak terbatas, empat CPU untuk multiprossesing simetris, replication publishing penuh dan full-text search.
    Tersedia servis-servis business intelligence, termasuk Analysis Services, Reporting Services, Notification Services dan Data Transformation Services.
    Meliputi database mirroring, data mining dan data integration services.

    Enterprise Edition

    Semua fitur-fitur pada Standard Edition ada pada Enterprise Edition ditambah fitur-fitur di bawah ini :
    Scaing dan partisi harddisk yang tidak terbatas, yang menyediakan kinerja yang luar biasa dan kemampuan untuk men-skala-kan SQL Server untuk mendukung instalasi database yang sangat besar. Dengan mempartisi tabel-tabel secara horrizontal melintasi beberapa server, bisa dikonfigurasi sekelompok server bekerja bersama-sama untuk mendukung sebuah situs Web yang besar atau pemrosesan data kelas enterprise.
    Database mirroring tingkat lanjut untuk menyelesaikan operasi-operasi paralel online dan peranti analisis tingkat lanjut untuk data mining dan fitur penuh OLAP.
    Failover clustering, yang memungkingkan diciptakannya cluster dengan empat node pada Windows 2000 Datacenter Server dan cluster dua node pada Windows 2000 Advanced Server. Gunakan fitur ini untuk menyediakan dukungan failover dan failback.

    Developer Edition

    Pada edisi ini mendukung semua fitur Enterprise Edition tetapi mempunyai linsensi penggunaan hanya untuk pengembangan / pengujian. 

    Mobile Edition

    Memungkinkan penggunaan SQL Server sebagai penyimpanan data pada peranti pintar (smart devices).

    Express Edition

    Menggantikan Personal edition pada versi-versi sebelumnya dari SQL Server dan meliputi Database Engine yang bisa didistribusikan kembali atau redistributable.
    Express Edition merupakan versi yang dijalankan ketika menginginkan solusi level rendah yang mudah digunakan. Express Edition gratis dan bisa didistribusikan dengan aplikasi-aplikasi pihak ketiga. Edisi ini mendukung sampai ukuran database 4 GB, RAM hingga 1 GB dan satu CPU.

    Sumber :

    william R. Tanek, Microsoft SQL Server 2005 – Administrator’s Pocket Consultant, Kompas Gramedia, 2002

    select aa.thn_jual, aa.productcode, aa.productdesc, sum(aa.cusosarreal) as osarreal, sum(aa.jatuhtempo) as jatuhtempo, sum(aa.bln6) as bln6,
    sum(aa.bln12) as bln12, sum(aa.bln18) as bln18, sum(aa.bln24) as bln24, sum(aa.bln30) as bln30, sum(aa.bln36) as bln36,
    sum(aa.bln42) as bln42, sum(aa.bln48) as bln48
    from
    (select a.norek, a.nopin, a.realisasidate, datepart(year, a.realisasidate) thn_jual, a.agingday, a.productcode,
    (select productdesc from genproduct where productcode = a.productcode) as productdesc, a.cusosarreal,
    (case when a.agingday > 0 then a.cusosarreal else 0 end) jatuhtempo,
    (case when a.agingday <= 0 then a.cusosarreal else 0 end) nonjatuhtempo,
    dateadd(month, -1, dateadd(month, a.tenor, a.realisasidate)) enddate,
    (case when agingday <=0 and (a.tenor – a.tenorpaid) between 0 and 6 then a.cusosarreal else 0 end) bln6,
    (case when agingday <=0 and (a.tenor – a.tenorpaid) between 7 and 12 then a.cusosarreal else 0 end) bln12,
    (case when agingday <=0 and (a.tenor – a.tenorpaid) between 13 and 18 then a.cusosarreal else 0 end) bln18,
    (case when agingday <=0 and (a.tenor – a.tenorpaid) between 19 and 24 then a.cusosarreal else 0 end) bln24,
    (case when agingday <=0 and (a.tenor – a.tenorpaid) between 25 and 30 then a.cusosarreal else 0 end) bln30,
    (case when agingday <=0 and (a.tenor – a.tenorpaid) between 31 and 36 then a.cusosarreal else 0 end) bln36,
    (case when agingday <=0 and (a.tenor – a.tenorpaid) between 37 and 42 then a.cusosarreal else 0 end) bln42,
    (case when agingday <=0 and (a.tenor – a.tenorpaid) between 43 and 48 then a.cusosarreal else 0 end) bln48,
    (case when agingday <=0 and (a.tenor – a.tenorpaid) > 48 then a.cusosarreal end) lbh48
    from rptfinancore a with(nolock)
    where a.closetype = ’0′
    ) aa
    group by aa.thn_jual, aa.productcode, aa.productdesc
    order by aa.thn_jual, aa.productcode

    CREATE procedure sp_rptFPDSurveyAll (
    @v_branchid varchar(4),
    @v_kodefpd varchar(1),
    @v_tgl smalldatetime
    )
    AS
    Begin
    set transaction isolation level read uncommitted
    begin transaction
    declare @v_dateawal smalldatetime
    declare @v_dateakhir smalldatetime
    declare @v_bln varchar(2)
    declare @v_tglakhir varchar(4)
    declare @v_blnakhir varchar(2)
    declare @v_thnakhir varchar(2)
    declare @v_tgl_akhir smalldatetime
    if @v_kodefpd = ’1′
    begin
    set @v_bln = datepart(mm, @v_tgl)
    set @v_dateawal = convert(smalldatetime, (dateadd(month, -1, (convert(varchar, @v_bln) + ‘/1/’ + convert(varchar, year(@v_tgl))))))
    set @v_dateakhir = convert(smalldatetime, @v_tgl)
    end
    else if @v_kodefpd = ’2′
    begin
    set @v_bln = datepart(mm, @v_tgl)
    set @v_dateawal = convert(smalldatetime, (dateadd(month, -2, (convert(varchar, @v_bln) + ‘/1/’ + convert(varchar, year(@v_tgl))))))
    set @v_dateakhir = convert(smalldatetime, @v_tgl) end
    else if @v_kodefpd = ’3′
    begin
    set @v_bln = datepart(mm, @v_tgl)
    set @v_dateawal = convert(smalldatetime, (dateadd(month, -3, (convert(varchar, @v_bln) + ‘/1/’ + convert(varchar, year(@v_tgl))))))
    set @v_dateakhir = convert(smalldatetime, @v_tgl) end
    else if @v_kodefpd = ’4′
    begin
    set @v_bln = datepart(mm, @v_tgl)
    set @v_dateawal = convert(smalldatetime, (dateadd(month, -4, (convert(varchar, @v_bln) + ‘/1/’ + convert(varchar, year(@v_tgl))))))
    set @v_dateakhir = convert(smalldatetime, @v_tgl) end
    else if @v_kodefpd = ’5′
    begin
    set @v_bln = datepart(mm, @v_tgl)
    set @v_dateawal = convert(smalldatetime, (dateadd(month, -5, (convert(varchar, @v_bln) + ‘/1/’ + convert(varchar, year(@v_tgl))))))
    set @v_dateakhir = convert(smalldatetime, @v_tgl)
    end
    else if @v_kodefpd = ’6′
    begin
    set @v_bln = datepart(mm, @v_tgl)
    set @v_dateawal = convert(smalldatetime, (dateadd(month, -6, (convert(varchar, @v_bln) + ‘/1/’ + convert(varchar, year(@v_tgl))))))
    set @v_dateakhir = convert(smalldatetime, @v_tgl)
    end
    else
    begin
    set @v_bln = datepart(mm, @v_tgl)
    set @v_dateawal = convert(smalldatetime, (dateadd(month, -6, (convert(varchar, @v_bln) + ‘/1/’ + convert(varchar, year(@v_tgl))))))
    set @v_dateakhir = convert(smalldatetime, @v_tgl)
    end
    if @v_branchid = ‘-1′
    select aa.branchid, aa.branchname, aa.surveyorname, sum(mapReal) as mapReal, sum(mapTgk) as mapTgk,
    sum(TB) as TB
    from
    (select ownergroupid as branchid, dbo.f_getbranch(ownergroupid) as branchname,
    suveyorname as surveyorname, count(norek+nopin) mapReal, 0 as mapTgk, 0 as TB
    from vp_report5
    where realizationdate between @v_dateawal and @v_dateakhir
    group by ownergroupid, suveyorname
    union all
    select branchid, dbo.f_getbranch(branchid) as branchname, surveyorname, 0 as mapReal, count(norek+nopin) mapTgk, 0 as TB
    from rptfinancore
    where agingday > 0 and realisasidate between @v_dateawal and @v_dateakhir
    group by branchid, surveyorname
    union all
    select branchid, branchname, surveyorname, 0 as mapReal, 0 as mapTgk, count(norek+nopin) TB
    from rptfinancore with(nolock)
    where reposesdate is not null and moveardate is not null
    and realisasidate between @v_dateawal and @v_dateakhir
    group by branchid, branchname, surveyorname
    ) aa
    group by aa.branchid, aa.branchname, aa.surveyorname
    else
    select aa.branchid, aa.branchname, aa.surveyorname, sum(mapReal) as mapReal, sum(mapTgk) as mapTgk,
    sum(TB) as TB
    from
    (select ownergroupid as branchid, dbo.f_getbranch(ownergroupid) as branchname,
    suveyorname as surveyorname, count(norek+nopin) mapReal, 0 as mapTgk, 0 as TB
    from vp_report5
    where ownergroupid = @v_branchid and realizationdate between @v_dateawal and @v_dateakhir
    group by ownergroupid, suveyorname
    union all
    select branchid, dbo.f_getbranch(branchid) as branchname, surveyorname, 0 as mapReal, count(norek+nopin) mapTgk, 0 as TB
    from rptfinancore
    where agingday > 0 and branchid = @v_branchid and realisasidate between @v_dateawal and @v_dateakhir
    group by branchid, surveyorname
    union all
    select branchid, branchname, surveyorname, 0 as mapReal, 0 as mapTgk, count(norek+nopin) TB
    from rptfinancore with(nolock)
    where reposesdate is not null and moveardate is not null
    and branchid = @v_branchid and realisasidate between @v_dateawal and @v_dateakhir
    group by branchid, branchname, surveyorname
    ) aa
    group by aa.branchid, aa.branchname, aa.surveyorname
    commit transaction
    end
    GO

    CREATE procedure sp_col998ALL_Tis (
    @v_branch varchar(4)
    )
    as
    begin
    Declare @vtgl smalldatetime
    –select top 1 @vtgl = tglproses from rptFinancore with(nolock)
    Declare @vtgl2 smalldatetime
    Declare @v_dateakhirkusus2 smalldatetime
    Declare @v_dateawalkusus smalldatetime
    Declare @v_dateakhirkusus smalldatetime
    Declare @v_dateawal smalldatetime
    Declare @v_dateakhir smalldatetime
    set @vtgl = dbo.f_getappldate()
    set @v_dateakhir = @vtgl
    set @v_dateawal = convert(varchar(2), month(@v_dateakhir)) + ‘/1/’ + convert(varchar(4), year(@v_dateakhir))
    if day(@vtgl) >= 17
    begin
    set @vtgl2 = dateadd(month,+1,convert(datetime,@vtgl))
    set @v_dateawalkusus = convert(varchar(2), month(@vtgl)) + ‘/17/’ + convert(varchar(4), year(@vtgl))
    set @v_dateakhirkusus = convert(varchar(2), month(@vtgl2)) + ‘/16/’ + convert(varchar(4), year(@vtgl2))
    set @v_dateawal = convert(varchar(2), month(@vtgl)) + ‘/17/’ + convert(varchar(4), year(@vtgl))
    set @v_dateakhir = convert(varchar(2), month(@vtgl)) + ‘/’+ convert(varchar(2), day(@vtgl))+’/’ + convert(varchar(4), year(@vtgl))
    end
    else
    begin
    set @vtgl2 = dateadd(month,-1,convert(datetime,@vtgl))
    set @v_dateawalkusus = convert(varchar(2), month(@vtgl2)) + ‘/17/’ + convert(varchar(4), year(@vtgl2 ))
    set @v_dateakhirkusus = convert(varchar(2), month(@vtgl)) + ‘/16/’ + convert(varchar(4), year(@vtgl))
    set @v_dateawal = convert(varchar(2), month(@vtgl2)) + ‘/17/’ + convert(varchar(4), year(@vtgl2))
    set @v_dateakhir = convert(varchar(2), month(@vtgl)) + ‘/’+ convert(varchar(2), day(@vtgl))+’/’ + convert(varchar(4), year(@vtgl))
    end
    set nocount on
    if @v_branch = ‘-1′
    select aa.regionalid, aa.regional, aa.zoneid, aa.zonename, aa.branchid, aa.branchname, aa.norek, aa.nopin, aa.cicildate,
    aa.angsuran, aa.indoor, aa.outdoor, (aa.indoor1+aa.outdoor1+aa.bank1+aa.unknown1-aa.reversal1) as inod,
    aa.reversal, aa.bank, aa.unknown,
    (case when (DATEDIFF(day, aa.cicildate, aa.valuedate)) <= 0 then indoor else 0 end) as Vtlancar,
    (case when (DATEDIFF(day, aa.cicildate, aa.valuedate)) between 1 and 90 then indoor else 0 end) as Vt90_in,
    (case when (DATEDIFF(day, aa.cicildate, aa.valuedate)) > 90 then indoor else 0 end) as Vt90UP_in,
    (case when (DATEDIFF(day, aa.cicildate, aa.valuedate)) <= 90 then outdoor else 0 end) as Vt90_od,
    (case when (DATEDIFF(day, aa.cicildate, aa.valuedate)) > 90 then outdoor else 0 end) as Vt90UP_od,
    tagih,denda, @v_dateakhir as vtgl,@v_dateawal as vtgl0
    from
    (select a.regionalid, a.regional, a.zoneid, a.zonename, a.branchid, a.branchname, a.norek, a.nopin, a.txndate, a.valuedate,
    (case when (a.InOut = ‘I’ and left(ISNULL(a.KuitansiNo, ‘O’),1) = ‘I’ and a.FuncType <> ‘RE’ and a.FuncType <> ‘PD’ and a.FuncType <> ‘ET’) then a.Amount else 0 end) as indoor,
    (case when ((a.InOut = ‘I’ and left(ISNULL(a.KuitansiNo, ‘O’),1) = ‘O’ and a.FuncType <> ‘RE’ and a.FuncType <> ‘TU’ and a.FuncType <> ‘PD’
    and a.txntype <> ’2′ and a.txntype <> ’3′and a.txntype <> ’4′ and a.txntype <> ’7′)) then a.Amount else 0 end) as outdoor,
    (case when (a.InOut = ‘I’ and left(ISNULL(a.KuitansiNo, ‘O’),1) = ‘I’ and a.FuncType <> ‘RE’ and a.FuncType <> ‘PD’ and a.FuncType <> ‘ET’) and a.txndate = @v_dateakhir then a.Amount else 0 end) as indoor1,
    (case when ((a.InOut = ‘I’ and left(ISNULL(a.KuitansiNo, ‘O’),1) = ‘O’ and a.FuncType <> ‘RE’ and a.FuncType <> ‘TU’ and a.FuncType <> ‘PD’
    and a.txntype <> ’2′ and a.txntype <> ’3′and a.txntype <> ’4′ and a.txntype <> ’7′)) and a.txndate = @v_dateakhir then a.Amount else 0 end) as outdoor1,
    isnull((case when a.txntype = ’7′ and a.FuncType = ‘PA’ then a.Amount else 0 end ),0) as unknown,
    isnull((case when a.txntype = ’7′ and a.FuncType = ‘PA’ and a.txndate = @v_dateakhir then a.Amount else 0 end),0) as unknown1,
    (case when a.FuncCode in (‘PA2′,’PA3′,’PA4′,’PA10′) then a.Amount else 0 end ) as bank,
    (case when (left(a.FuncCode,2) = ‘PA’ and a.FuncType = ‘RE’) then a.Amount else 0 end ) as reversal,
    (case when a.FuncCode in (‘PA2′,’PA3′,’PA4′,’PA10′) and a.txndate = @v_dateakhir then a.Amount else 0 end ) as bank1,
    (case when (left(a.FuncCode,2) = ‘PA’ and a.FuncType = ‘RE’) and a.txndate = @v_dateakhir then a.Amount else 0 end) as reversal1,
    (case when (a.TxnType = ’1′ and a.InOut = ‘I’ and a.FuncType <> ‘RE’) then CollectFee else 0 end) as tagih,
    (case when (a.TxnType = ’1′ and a.InOut = ‘I’ and a.FuncType =’PD’) then a.Amount else 0 end) as denda,
    ISNULL((select top 1 coraccountdetail.cicildate from coraccountdetail where coraccountdetail.norek = a.norek and coraccountdetail.nopin = a.nopin and
    coraccountdetail.paiddate = a.valuedate), a.txndate ) as cicildate,0 as angsuran
    from v_col998 a with(nolock)
    where a.txndate between @v_dateawal and @v_dateakhir and a.NoRek is not null
    –and a.branchid = ’3001′
    –order by a.norek, a.nopin
    ) aa
    union all
    select a.regionalid, a.regional, a.zoneid, a.zonename, a.branchid, a.branchname, a.norek, a.nopin, a.cicildate,
    a.angsuran, a.indoor, a.outdoor, a.inod, a.reversal, a.bank, a.unknown, a.vtlancar, a.vt90_in, a.vt90up_in,
    a.vt90_od, a.vt90up_od, a.tagih, a.denda, @v_dateakhir as vtgl, @v_dateawal as vtgl0
    from v_col998_khusus a with(nolock)
    –where a.branchid = ’3001′
    else
    select aa.regionalid, aa.regional, aa.zoneid, aa.zonename, aa.branchid, aa.branchname, aa.norek, aa.nopin, aa.cicildate,
    aa.angsuran, aa.indoor, aa.outdoor, (aa.indoor1+aa.outdoor1+aa.bank1+aa.unknown1-aa.reversal1) as inod,
    aa.reversal, aa.bank, aa.unknown,
    (case when (DATEDIFF(day, aa.cicildate, aa.valuedate)) <= 0 then indoor else 0 end) as Vtlancar,
    (case when (DATEDIFF(day, aa.cicildate, aa.valuedate)) between 1 and 90 then indoor else 0 end) as Vt90_in,
    (case when (DATEDIFF(day, aa.cicildate, aa.valuedate)) > 90 then indoor else 0 end) as Vt90UP_in,
    (case when (DATEDIFF(day, aa.cicildate, aa.valuedate)) <= 90 then outdoor else 0 end) as Vt90_od,
    (case when (DATEDIFF(day, aa.cicildate, aa.valuedate)) > 90 then outdoor else 0 end) as Vt90UP_od,
    tagih,denda, @v_dateakhir as vtgl,@v_dateawal as vtgl0
    from
    (select a.regionalid, a.regional, a.zoneid, a.zonename, a.branchid, a.branchname, a.norek, a.nopin, a.txndate, a.valuedate,
    (case when (a.InOut = ‘I’ and left(ISNULL(a.KuitansiNo, ‘O’),1) = ‘I’ and a.FuncType <> ‘RE’ and a.FuncType <> ‘PD’ and a.FuncType <> ‘ET’) then a.Amount else 0 end) as indoor,
    (case when ((a.InOut = ‘I’ and left(ISNULL(a.KuitansiNo, ‘O’),1) = ‘O’ and a.FuncType <> ‘RE’ and a.FuncType <> ‘TU’ and a.FuncType <> ‘PD’
    and a.txntype <> ’2′ and a.txntype <> ’3′and a.txntype <> ’4′ and a.txntype <> ’7′)) then a.Amount else 0 end) as outdoor,
    (case when (a.InOut = ‘I’ and left(ISNULL(a.KuitansiNo, ‘O’),1) = ‘I’ and a.FuncType <> ‘RE’ and a.FuncType <> ‘PD’ and a.FuncType <> ‘ET’) and a.txndate = @v_dateakhir then a.Amount else 0 end) as indoor1,
    (case when ((a.InOut = ‘I’ and left(ISNULL(a.KuitansiNo, ‘O’),1) = ‘O’ and a.FuncType <> ‘RE’ and a.FuncType <> ‘TU’ and a.FuncType <> ‘PD’
    and a.txntype <> ’2′ and a.txntype <> ’3′and a.txntype <> ’4′ and a.txntype <> ’7′)) and a.txndate = @v_dateakhir then a.Amount else 0 end) as outdoor1,
    isnull((case when a.txntype = ’7′ and a.FuncType = ‘PA’ then a.Amount else 0 end ),0) as unknown,
    isnull((case when a.txntype = ’7′ and a.FuncType = ‘PA’ and a.txndate = @v_dateakhir then a.Amount else 0 end),0) as unknown1,
    (case when a.FuncCode in (‘PA2′,’PA3′,’PA4′,’PA10′) then a.Amount else 0 end ) as bank,
    (case when (left(a.FuncCode,2) = ‘PA’ and a.FuncType = ‘RE’) then a.Amount else 0 end ) as reversal,
    (case when a.FuncCode in (‘PA2′,’PA3′,’PA4′,’PA10′) and a.txndate = @v_dateakhir then a.Amount else 0 end ) as bank1,
    (case when (left(a.FuncCode,2) = ‘PA’ and a.FuncType = ‘RE’) and a.txndate = @v_dateakhir then a.Amount else 0 end) as reversal1,
    (case when (a.TxnType = ’1′ and a.InOut = ‘I’ and a.FuncType <> ‘RE’) then CollectFee else 0 end) as tagih,
    (case when (a.TxnType = ’1′ and a.InOut = ‘I’ and a.FuncType =’PD’) then a.Amount else 0 end) as denda,
    ISNULL((select top 1 coraccountdetail.cicildate from coraccountdetail where coraccountdetail.norek = a.norek and coraccountdetail.nopin = a.nopin and
    coraccountdetail.paiddate = a.valuedate), a.txndate ) as cicildate,0 as angsuran
    from v_col998 a with(nolock)
    where a.txndate between @v_dateawal and @v_dateakhir and a.NoRek is not null
    and a.branchid = @v_branch
    –order by a.norek, a.nopin
    ) aa
    union all
    select a.regionalid, a.regional, a.zoneid, a.zonename, a.branchid, a.branchname, a.norek, a.nopin, a.cicildate,
    a.angsuran, a.indoor, a.outdoor, a.inod, a.reversal, a.bank, a.unknown, a.vtlancar, a.vt90_in, a.vt90up_in,
    a.vt90_od, a.vt90up_od, a.tagih, a.denda, @v_dateakhir as vtgl, @v_dateawal as vtgl0
    from v_col998_khusus a with(nolock)
    where a.branchid = @v_branch
    set nocount off
    end
    GO