Selasa, 22 Maret 2016

Windows Media Player (WMP) yang Tidak Bisa Dibuka dan Pemutar Video Tidak Bersuara

1. Instal Player dan Realtek terupdate
2. Buka perintah Run dengan menekan tombol "Windows+R" kemudian ketikkan "cmd" dan Enter atau masuk ke menu "start" kemudian ketik "cmd" dan "run as administrator"
3. Ketik “regsvr32 jscript.dll" kemudian tekan "Enter"
4. Ketik “regsvr32 vbscript.dll” kemudian tekan "Enter"
5. Tutup Command Prompt (cmd) kemudian buka WMP atau pemutar video, Insya Allah sudah bisa menyalakan musik dan video lagi
6. Restart
7. kalau tetap tidak bisa biasanya saya putar player VLC :)

Senin, 21 Maret 2016

Query : Membuat Partisi Tabel ( copied from http://dendieisme.blogspot.co.id)

Secara definisi partisi table adalah memecah tabel menjadi beberapa bagian/segmen, tujuan dari menggunakan partisi adalah untuk mempercepat proses query.

Misalkan kita memilik data sebanyak 10 juta record, bila pada table konvensional maka data sebanyak itu akan di simpan dalam satu segmen, tetapi bila menggunakan partisi maka data sebanyak itu akan di pecah-pecah ke banyak partisi berdasarkan sebuah kondisi, misalkan berdasarkan tanggal, maka ketika melakukan query hanya men-scan segmen dimana data itu berada, tidak 10 juta record itu di scan, sehingga proses query menjadilebih cepat.

Feature partisi tabel ini ada hadir dari MySQL versi 5.1, sedangkan MySQL yg gw pake saat eksperimen adalah MySQL versi 5.1.31 dengan sistem operasi yang gw pake adalah Ubuntu 9.04 Jaunty Jackalope


Tapi sebelum-nya melakukan partisi tabel cek lebih dahulu apa databasenya suport partisi atau tidak, caranya seperti di bawah ini

setelah masuk ke console MySQL ketikan perintah dibawah ini:

SHOW VARIABLES LIKE '%partition%';

+-------------------+-------+
| Variable_name     | Value |
+-------------------+-------+
| have_partitioning | YES   +
+-------------------+-------+
1 row in set (0.06 sec)

QUERY : QUERY RIGHT JOIN (w3scholl)

The RIGHT JOIN keyword returns all rows from the right table (table2), with the matching rows in the left table (table1). The result is NULL in the left side when there is no match.

SQL RIGHT JOIN Syntax

SELECT column_name(s)
FROM table1
RIGHT JOIN table2
ON table1.column_name=table2.column_name;
or:
SELECT column_name(s)
FROM table1
RIGHT OUTER JOIN table2
ON table1.column_name=table2.column_name;
PS! In some databases RIGHT JOIN is called RIGHT OUTER JOIN.
Example : SELECT Orders.OrderID, Employees.FirstName
FROM Orders
RIGHT JOIN Employees
ON Orders.EmployeeID=Employees.EmployeeID
ORDER BY Orders.OrderID;

result :
Number of Records: 197
OrderIDFirstName
Adam 
10248  Steven 
10249  Michael 
10250  Margaret 
10251  Janet 


you can see in right side have a empty value because no id employee ( right table/ table 2 ) in orders table
SQL RIGHT JOIN

Query : Query LEFT JOIN (LEFT OUTER JOIN) copied from w3scholl

SQL LEFT JOIN Keyword

The LEFT JOIN keyword returns all rows from the left table (table1), with the matching rows in the right table (table2). The result is NULL in the right side when there is no match.

SQL LEFT JOIN Syntax

SELECT column_name(s)
FROM table1
LEFT JOIN table2
ON table1.column_name=table2.column_name;
or:
SELECT column_name(s)
FROM table1
LEFT OUTER JOIN table2
ON table1.column_name=table2.column_name;

example :
SELECT Customers.CustomerName, Orders.OrderID
FROM Customers
LEFT JOIN Orders
ON Customers.CustomerID=Orders.CustomerID
ORDER BY Customers.CustomerName; 

Query : Persamaan Bentuk Penulisan Query

Mungkin ada yang belum tahu, bahwa kata kunci OUTER sebenarnya adalah bersifat opsional. Jadi, baik ditulis atau tidak, hasilnya tetap sama. Pada dasarnya, semua bagian dari kata kunci JOIN adalah opsional. Jika hanya ditulis JOIN saja tanpa embel-embel LEFT/RIGHT, FULL, atau CROSS, default-nya adalah INNER. Contoh di bawah ini adalah sebuah query dengan kata kunci JOIN yang artinya sama dengan INNER JOIN.
1
2
SELECT * FROM A JOIN B
ON A.X = B.Y
Berikut ini adalah daftar query beserta persamaannya.
A LEFT JOIN B = A LEFT OUTER JOIN B
A RIGHT JOIN B = A RIGHT OUTER JOIN B
A FULL JOIN B = A FULL OUTER JOIN B
A INNER JOIN B = A JOIN B
A, B = A CROSS JOIN B
Pada baris terakhir adalah syntax lama yang sudah mulai ditinggalkan tapi masih didukung oleh banyak mesin database modern. Penggabungan dua buah table atau lebih menggunakan tanda koma (,) sebaiknya dihindari, karena dapat menimbulkan ketaksaan (ambiguitas) ketika misalnya kata kunci INNER dan OUTER digunakan secara bersamaan pada suatu query. Ketaksaan tersebut mungkin saja diinterpretasikan berbeda dari satu mesin database ke yang lainnya.
Kerugian lain dari syntax lama adalah hasilnya akan selalu bernilai CROSS JOIN jika kita lupa untuk menambahkan klausa WHERE. Pada syntax baru yang menggunakan kata kunci JOIN, hal ini tidak mungkin terjadi karena akan menimbulkan kegagalan pada saat pemeriksaan syntax sebelum dijalankan oleh mesin database.
Kesimpulan dari catatan ini adalah:
1. Jika hanya ditulis JOIN, artinya adalah INNER JOIN.
2. Kata kunci OUTER, harus didahului oleh LEFT/RIGHT/FULL. Tidak bisa hanya ditulis OUTER JOIN.
3. Kata kunci OUTER bersifat opsional, jadi bisa ditulis LEFT JOIN atau RIGHT JOIN atau FULL JOIN saja.
4. CROSS JOIN berarti kita membuat daftar dari table pertama dikali dengan daftar dari table kedua. Akan menghasilkan semua

Query : FULL JOIN (copied from http://www.tutorialspoint.com)

The SQL FULL JOIN combines the results of both left and right outer joins.
The joined table will contain all records from both tables, and fill in NULLs for missing matches on either side.

Syntax:

The basic syntax of FULL JOIN is as follows:
SELECT table1.column1, table2.column2...
FROM table1
FULL JOIN table2
ON table1.common_field = table2.common_field;
Here given condition could be any given expression based on your requirement.

Example:

Consider the following two tables, (a) CUSTOMERS table is as follows:
+----+----------+-----+-----------+----------+
| ID | NAME     | AGE | ADDRESS   | SALARY   |
+----+----------+-----+-----------+----------+
|  1 | Ramesh   |  32 | Ahmedabad |  2000.00 |
|  2 | Khilan   |  25 | Delhi     |  1500.00 |
|  3 | kaushik  |  23 | Kota      |  2000.00 |
|  4 | Chaitali |  25 | Mumbai    |  6500.00 |
|  5 | Hardik   |  27 | Bhopal    |  8500.00 |
|  6 | Komal    |  22 | MP        |  4500.00 |
|  7 | Muffy    |  24 | Indore    | 10000.00 |
+----+----------+-----+-----------+----------+

Query : Bentuk Lain Query FULL JOIN

Contoh :

SELECT  ID, NAME, AMOUNT, DATE
     FROM CUSTOMERS
     LEFT JOIN ORDERS
     ON CUSTOMERS.ID = ORDERS.CUSTOMER_ID
UNION ALL
     SELECT  ID, NAME, AMOUNT, DATE
     FROM CUSTOMERS
     RIGHT JOIN ORDERS
     ON CUSTOMERS.ID = ORDERS.CUSTOMER_ID

Query : Select Multiple Query With Subquery

contoh :

SELECT DISTINCT petid, userid, lastComDate, lastPosterId
FROM 
    pet 
    LEFT JOIN comments ON pet.id = comments.petid 
    LEFT JOIN (
        SELECT MAX(comDate), userid, petid FROM comments GROUP BY userid
    ) a ON a.petid = pet.id
WHERE 
    userid='ABC' 
    AND deviceID!='ABC' 
    AND comDate>=DATE_SUB(CURRENT_TIMESTAMP, INTERVAL 2 MONTH)
;

Query : Real query Intersect and Except in Mysql Server or Oracle

query Intersect in mysql same with query IN
and Except in mysql same with query NOT IN


Intersect ( Irisan )
SELECT supplier_id
FROM suppliers
WHERE supplier_id <= 99
INTERSECT
SELECT supplier_id
FROM orders
WHERE quantity > 25;
 
oTHER
Select City From Customers
Intersect
Select City From Sales
Except
SELECT supplier_id
FROM suppliers
WHERE supplier_id <= 99
EXCEPT
SELECT supplier_id
FROM orders
WHERE quantity > 25; 
 
oTHER
Select City From Customers
Except
Select City From Sales

Query : Query Union, Intersect, Except


1. UNION berguna untuk menampilkan hasil gabungan dari 2 tabel
          SELECT column_name (s) FROM table_name1
  • UNION
    SELECT column_name (s) FROM table_name2;
2. INTERSECT berguna untuk menampilkan irisan dari 2 tabel
  • SELECT column_name (s) FROM table_name1
    WHERE column_name (s) IN
    (SELECT column_name (s) FROM table_name2);
3. EXCEPT berguna untuk menampilkan perkecualian dari luar irisan 2 tabel tersebut
  • SELECT column_name (s) FROM table_name1
    WHERE column_name (s) NOT IN
    (SELECT column_name (s) FROM table_name2);

Query : Multiple Query Select

contoh :

Select ( Select count(jml)  from tabel a where id>20) as A
          , ( Select count(jml)  from tabel a where id<=20) as B

from tabel a

Query : Multiple Query Select with Union

Data :

ID Dept

1 A
2 B
3 A
4 C
5 B
6 D
7 E
8 F

Result :

Dept1 Dept2 Dept3

A D F
B E
C


Query :
SELECT
    1 AS Deptnumber
  , Dept
FROM tbl_students
WHERE Dept IN ('A', 'B', 'C')
UNION
SELECT
    2 AS DeptNumber
  , Dept
FROM tbl_students
WHERE Dept IN ('D', 'E')
UNION
SELECT
    3 AS Deptnumber
  , Dept
FROM tbl_students
WHERE Dept IN ('F')

Query : Contoh Query IN

contoh

SELECT Dept from tbl_students
where Dept in ('A', 'B', 'C')

JEASYUI: Datagrid Function with pagination MYSQL Database

    function bagiankit()
    {

$page = isset($_POST['page']) ? intval($_POST['page']) : 1;
        $rows = isset($_POST['rows']) ? intval($_POST['rows']) : 10;
       
        $offset=($page-1)*$rows;
        $result=array();

            $sqlcount = "SELECT count(*) as total FROM bagian  ";
            $sqlc = mysql_query($sqlcount);
            $rowo = mysql_fetch_row($sqlc);
            $result['total'] = $rowo[0];
            $sqlData = "SELECT * FROM bagian   ORDER BY ID_BAGIAN DESC LIMIT $offset,$rows";
       
            $query = mysql_query($sqlData);
            $rows=array();

            while ($row = mysql_fetch_object($query)) {
                array_push($rows, $row);
            }
            $result['rows'] = $rows;
            return json_encode($result);


   
       
    }

JEASYUI Datagrid : Contoh Function lengkap datagrid pagination menggunakan database mysql server

function searchresultloggb($username,$TANDA,$dataType)
    {
  
        $page = isset($_POST['page']) ? intval($_POST['page']) : 1;
        $rows = isset($_POST['rows']) ? intval($_POST['rows']) : 10;
        $order = isset($_POST['order']) ? $_POST['order'] : 'DESC';
        $sort = isset($_POST['sort']) ? $_POST['sort'] : 'Logging_ID';
        $xls = isset($_POST['xls']) ? $_POST['xls'] : false;


//$START=$_POST['START'].' 00:00:01';
//$FINISIH=$_POST['FINISH'].' 23:59:59';

$START=$_POST['START'];
$FINISIH=$_POST['FINISH'];
  $startRow =($page - 1) * $rows + 0;
     $endRow = 10;  

 $sqlResult ="Select TOP ".$endRow."*
 from tb_m_logging a
inner join tb_m_usrlgn b
on a.m_UsrLgn_ID=b.UsrLgn_ID
inner join tb_m_action c
on a.m_Action_ID=c.Action_ID

WHERE";

            $sqlCount = "SELECT count(*)
            from tb_m_logging a
inner join tb_m_usrlgn b
on a.m_UsrLgn_ID=b.UsrLgn_ID
inner join tb_m_action c
on a.m_Action_ID=c.Action_ID

            where ";

      //  $start = $_POST['START'];
      //  $finish = $_POST['FINISH'];
        $sqlString = '';
  
    
       $sqlString = $sqlString . "     Logging_ID IS NOT NULL ";
   
            $sqlString = $sqlString . "  and Reff_ID='$dataType' ";

     

$sqlStringa = $sqlString . " and Logging_ID NOT IN
(
Select TOP ".$startRow."  Logging_ID
from tb_m_logging a
inner join tb_m_usrlgn b
on a.m_UsrLgn_ID=b.UsrLgn_ID
inner join tb_m_action c
on a.m_Action_ID=c.Action_ID


) ";       
   


        $startRow = ($page - 1) * $rows + 0;
        $endRow = ($startRow + $rows) - 1;

        $sort = ($sort == "Logging_ID") ? "Logging_ID" : $sort;

        $sqlCount = $sqlCount . " " . $sqlString ;
        //$sqlString = $sqlString." AND rownum<=".$endRow;
        $sqlResult = $sqlResult . $sqlStringa . " ORDER BY " . $sort . " " . $order;
        //echo($sqlResult);exit;
if ($xls) {
        
                 $sqlResult = $sqlResult  ;
                //echo($sqlResult);exit();
            } else {
                $sqlResult = "" . $sqlResult ;
            }

       
        //$sqlResult = "SELECT * FROM (".$sqlResult.") WHERE ".$startRow."<=row_number";
        //echo($sqlCount);
       /* $conn = oci_connect($this->db->username, $this->db->password, $this->db->
            hostname);*/
        //$conn = oci_connect("ttm", "ngacumak", "172.16.4.4/CDM02");

        //get Total Records
        $sqlc = mssql_query($sqlCount);
      
        $rowo = mssql_fetch_row($sqlc);
        $result['total'] = $rowo[0];
       // oci_free_statement($sqlCount);
//echo $sqlResult;
//exit();
        //Get Data


        $query = mssql_query($sqlResult);
       // oci_execute($query);
        $items = array();


        while ($row =mssql_fetch_object($query)) {
            array_push($items, $row);
        }

        $result['rows'] = $items;
        //oci_free_statement($sqlResult);
       // oci_close($conn);
        return json_encode($result);
    }

Query : Pagination Mysql Server dan MYSQL

MySQL Server 

Select TOP ".$endRow."*
From tb_m_Cust a
inner join tb_m_CustType b
on a.m_CustType_ID=b.CustType_ID
where a.Cust_ID IS NOT NULL

and a.Cust_ID NOT IN
(
Select TOP ".$startRow."  a.Cust_ID
From tb_m_Cust a
inner join tb_m_CustType b
on a.m_CustType_ID=b.CustType_ID
order by KD_Cust desc

ORDER BY  

MYSQL 
kalau dalam MYSQL cukup menggunakan LIMIT $end,$start

Query : Contoh Query Declare MySQL Server

contoh :

declare @No varchar(18)
exec sprGetUCode 'tb_m_logging', @No output
select @No
insert into tb_m_logging values (@No,GETDATE ( ),'$username','".$arrambilaction['Action_ID']."','$ambilget','$iddisplay','$katakan')

Minggu, 20 Maret 2016

Query : STRToDate Mysql

Contoh :

UPDATE absenkaryawan SET
                                   checkin=STR_TO_DATE('$checkin', '%m/%d/%Y %H:%i:%s')
                                   ,checkout=STR_TO_DATE('$checkouta', '%m/%d/%Y %H:%i:%s')
                                   ,JMSLEMBUR=STR_TO_DATE('$JMSLEMBURa', '%m/%d/%Y %H:%i:%s')
                                   ,JAMELEMBUR=STR_TO_DATE('$JAMELEMBURa', '%m/%d/%Y %H:%i:%s')
                                 
        WHERE serijadwal='" . $ID .

ODBC : error datasource name not found and no default driver specified

Siang,

hari ini dapat problem jadi sudah instal ODBC namun ketika SDK Fingerprint dieksekusi ada error

IT : Instalasi ODBC Driver pada Windows 7

ODBC Driver merupakan sebuah standar terbuka yang digunakan sebagai konektivitas antar mesin basis data. Jika kita ingin meng akses database dari bahasa pemrograman tertentu seperti Java, Delphi, VB atau bahasa pemrograman Desktop lainnya maka kita membutuhkan ODBC Driver untuk mengakses basisdata seperti MS. Access. ODBC Driver dapat dijalankan di berbagai sistem operasi misalnya Windows, Linux, MACOs dan lainnya.
Berikut langkah-langkah installasi dan konfigurasi ODBC Driver pada Windows 7:
1. Download Aplikasi ODBC Driver di http://dev.mysql.com/get/Downloads/Connector-ODBC/5.3/mysql-connector-odbc-5.3.4-win32.msi
2. Jalankan file installasi yang sudah didownload sebelumnya

odbc1

IT : Fungsi Task Manager pada Windows (copied from http://difacom.ucoz.com)

Windows Task Manager sering digunakan untuk memecahkan masalah di dalam sistem operasi windows, seperti menutup aplikasi yang tidak bekerja dengan baik atau memantau penggunaan sumber daya sistem. Namun, ada banyak lagi yang dapat kita lakukan melalui Task Manager di Windows 7.
Untuk segera membuka Task Manager, klik kanan pada taskbar dan pilih "Start Task Manager". Anda juga dapat menekan Ctrl + Shift + Esc untuk membuka jendela Task Manager. Windows 8 juga memiliki task manager baru yang lebih bagus, tetapi sebagian dari kita masih banyak yang menggunakan Windows 7.
Disini saya akan membahas Beberapa Fungsi dari Task Manager di Windows 7


Mengirim pesan ke pengguna lain secara online

Pada tab di dalam jendela Task Manager, Anda dapat melihat pengguna / User yang sedang Online yang terhubung dalam Jaringan lokal ( Local Area Network )
Anda juga dapat mengirim pesan ke pengguna lain dari tab Users, cukup pilih User yang sedang Aktif  dan klik "Send Message". Jika pengguna menggunakan komputer pada saat yang sama, jendela pesan akan muncul di desktop Anda.

IT : Penyebab Baterai Laptop tidak update

1.CEMOS Batery
Ini adalah skenario yang paling mungkin, terutama jika komputer Anda tidak baru.
Baterai CMOS duduk di motherboard komputer Anda dan memberikan kekuatan untuk Metal Oxide Semiconductor Pelengkap (CMOS) chip yang. Chip CMOS menyimpan informasi tentang konfigurasi sistem, termasuk tanggal dan waktu. Baterai CMOS memastikan chip dapat menyimpan data ini bahkan saat komputer dimatikan dan tidak terhubung ke listrik. Jika baterai memburuk, chip mulai kehilangan informasi dan salah satu gejala adalah bahwa komputer Anda tidak lagi mempertahankan waktu dan tanggal.
download
Mengganti baterai CMOS cukup mudah. Anda hanya perlu mematikan komputer Anda, tanah sendiri, membuka kasus ini, mengetahui jenis baterai (langkah 3 di buku terkait) duduk di motherboard Anda, pergi membelinya, mulai dari awal, dan pertukaran baterai. Ikuti link ke kata kunci untuk artikel di tangga masing-masing.

IT : Cara agar Space Hardisk tidak termakan banyak pada saat extract beberapa folder

1. Set Prioruty Low
2. Masuk Ke Task Manager - Detail Set Affinity - lalu yang dicentang misal hanya PC 10 dan PC 11 saja.

SDK FINGERPRINT SETUP BAT CONTENT

Copy /y commpro.dll %windir%\system32\
Copy /y comms.dll %windir%\system32\
Copy /y zkemsdk.dll %windir%\system32\
Copy /y rscagent.dll %windir%\system32\
Copy /y rscomm.dll %windir%\system32\
Copy /y zkemkeeper.dll %windir%\system32\
Copy /y tcpcomm.dll %windir%\system32\
Copy /y usbcomm.dll %windir%\system32\
Copy /y plce.dll %windir%\system32\

Copy /y commpro.dll %windir%\SysWOW64\
Copy /y comms.dll %windir%\SysWOW64\
Copy /y zkemsdk.dll %windir%\SysWOW64\
Copy /y rscagent.dll %windir%\SysWOW64\
Copy /y rscomm.dll %windir%\SysWOW64\
Copy /y zkemkeeper.dll %windir%\SysWOW64\
Copy /y tcpcomm.dll %windir%\SysWOW64\
Copy /y usbcomm.dll %windir%\SysWOW64\
Copy /y plce.dll %windir%\SysWOW64\


REGSVR32 c:\windows\system32\ZKEMKEEPER.DLL
REGSVR32 c:\windows\SysWOW64\ZKEMKEEPER.DLL
echo set up successful


pause

Rabu, 16 Maret 2016

Query : Insert Tabel dari Tabel Lain MYSQL

Contoh :

insert into absenkaryawan(userid,nik,nama,checkin,checkout,serijadwal,tanggal,periode,machinenumber) select userid,nik,nama,min(checktime),max(checktime),serijadwal,DATE_FORMAT(checktime,'%Y-%m-%d'),substr(serijadwal,1,6),machinenumber from checkinout where STATUSUPLOAD!='OK' group by nik,serijadwal

AX : Query untuk mengetahui tanggal di awal dan akhir bulan

PyPayApprovalTrans.StartDate >= dateStartMth(TmMasterPeriodTable::find(period).EndDate)
        //&& PyPayApprovalTrans.StartDate <= dateEndMth(TmMasterPeriodTable::find(period).EndDate)

Query : Query Case When Di MYSQL

Contoh

SELECT userid
                             ,NIK
                             ,NAMA
                             ,checktime
                             ,(CASE
    WHEN verifycode = 0 THEN 'C/Masuk'
    ELSE 'C/Keluar'
  END
) as verifycodea
                             ,(CASE
    WHEN verifycode = 0 THEN ''
    ELSE ''
  END
) as verifycodee
                             ,keterangan
                             ,status
                             ,(CASE
    WHEN machinenumber = '10.10.10.207' THEN 'NS-CL'
    WHEN machinenumber = '10.10.12.249' THEN 'NS-CL'
    ELSE 'SMK'
  END
) as lokasin
                             FROM checkinout

Query : Update dan Insert Data Datetime namun format yang dikirim berbeda dengan Database

Contoh :
UPDATE absenkaryawan SET
                                   checkin=STR_TO_DATE('$checkin', '%m/%d/%Y %H:%i:%s')
                                   ,checkout=STR_TO_DATE('$checkouta', '%m/%d/%Y %H:%i:%s')
                                   ,JMSLEMBUR=STR_TO_DATE('$JMSLEMBURa', '%m/%d/%Y %H:%i:%s')
                                   ,JAMELEMBUR=STR_TO_DATE('$JAMELEMBURa', '%m/%d/%Y %H:%i:%s')
                                 
        WHERE serijadwal='" . $ID .
            "'

%m/%d/%Y %H:%i:%s itu adalah format yang kita kirim dari aplikasi kita..nanti keinsertanya tetap sesuai dengan yang ada di database meski format di database adalah yyyy-mm-dd hh:mm:ss

Query : Mengurangi Datetime antara 2 field di MYSQL

Contoh :

SELECT timediff(checkout, checkin) AS BCAA FROM absenkaryawan WHERE nik='$ssna' and checkin='$checkinas'

Query : Menghapus data Kembar di Mysql

Contoh

delete hapus from absenkaryawan hapus
inner join ( select nik, tanggal, min(id) as NoAwal
from absenkaryawan cari
 group by  nik,tanggal having count(*) > 1 ) as Cari
on   hapus.nik = Cari.nik   
and hapus.tanggal = Cari.tanggal
and hapus.id > cari.NoAwal

Query : Menambah dan Mengurangi Hari Atau Jam di MYSQL

Contoh:

select nik,checkin,id,serijadwal,userid,
                            DATE_ADD(checkin,INTERVAL 17 HOUR) AS bcc
                            ,DATE_SUB(checkin,INTERVAL 1 DAY) AS bcck
                           from absenkaryawan where checkin = checkout


DATE_ADD = untuk menambah
DATE_SUB = untuk mengurangi

Minggu, 13 Maret 2016

Access : Compact and Repair Database

sebelumnya dibackup dulu masuk menu
File - Manage - Backup Database

lalu lakukan compact and repair masuk menu
File - Manage - Compact and Repair

AX : Function Clicked query langsung ke SQL dengan AX

void clicked()
{
    PurchAnalyzeInqTmp.setTmpData(SAN_PurchAnalyzeTmp_Inq::SQL_PurchAnalyzeInqTmp_Inq(FromDate.dateValue(), ToDate.dateValue()));
    PurchAnalyzeInqTmp_DS.executeQuery();
    super();
}

SAN_PurchAnalyzeTmp_Inq itu nama Classes
 SQL_PurchAnalyzeInqTmp_Inq itu nama Method

Kamis, 10 Maret 2016

AX : Query dengan beberapa kondisi ( Query Or )

 SAN_INVENTREPORT_ds.query().dataSourceTable(tablenum(SAN_INVENTREPORT)).addRange(fieldnum(SAN_INVENTREPORT, BegQTY)).value
          ("((BEGQTY !=0) || (ENDQTY !=0) || (PLUSQTY != 0) || (MINUSQTY != 0) || (BEGAMT != 0) || (ENDAMT != 0) || (PLUSAMT != 0) || (MINUSAMT != 0) )");

AX : Query dengan beberapa kondisi (Query And)

Di AX apabila ingin melakukan query degnan 2 kondisi maka  \.dataSourceTable(tablenum(SAN_INVENTREPORT)).addRange(fieldnum(table_name, field_name)).value
diulang sesuai dengan banyaknya kondisi


 SAN_INVENTREPORT_ds.query().dataSourceTable(tablenum(SAN_INVENTREPORT)).clearRanges();
  rangeReportID = SAN_INVENTREPORT_ds.query().dataSourceTable(tablenum(SAN_INVENTREPORT)).addRange(fieldnum(SAN_INVENTREPORT, ReportID));
    rangeReportID.value(pecahstring);
  rangeReportID.status(RangeStatus::Locked);
    //kalau where ada dua berarti addrange lagi sama persis kayak order by dibawah
    //query buat and dalam jumlah banyakczxczxczxc
  if (hidenol == 1)
    {
     SAN_INVENTREPORT_ds.query().dataSourceTable(tablenum(SAN_INVENTREPORT)).addRange(fieldnum(SAN_INVENTREPORT, BegQTY)).value
          ("((BEGQTY !=0) || (ENDQTY !=0) || (PLUSQTY != 0) || (MINUSQTY != 0) || (BEGAMT != 0) || (ENDAMT != 0) || (PLUSAMT != 0) || (MINUSAMT != 0) )");
  }

Rabu, 09 Maret 2016

AX : contoh dynalink ax 2012 ( Join di AX )

  case tableNum(SAN_ReportDetailTB):
                common = element.args().record();
                this.addDynaLink(common, fieldNum(SAN_ReportDetailTB, Voucher), fieldNum(SAN_ReportDetailTB, AccountingDate));
                break;

Fungsi Dynalink itu sama dengan join

AX : where dengan beberapa kondisi di AX ( adddynalink)

Use the following code to add dynalink to the form datasource query:
public void init()
{
    super();
    
    this.query().dataSourceTable(tableNum(MzkPurchTrackingDetailsTable)).clearDynalinks();
    this.query().dataSourceTable(tableNum(MzkPurchTrackingDetailsTable)).addDynalink(
        fieldNum(MzkPurchTrackingDetailsTable, PurchId),
        PurchParmTable,
        fieldNum(PurchParmTable, PurchId));
}
Where,
  • First parameter is the source table field
  • Second parameter is the destination table
  • Third parameter is the destination table field

AX : script untuk mengetahui tanggal terakhir dari suatu bulan

TglAkhir = endmth(_TglAwal);

AX : Query di AX

 Contoh :

  SAN_ReportDetailTB_ds.query().dataSourceTable(tablenum(SAN_ReportDetailTB)).clearRanges();
    //fungsi clear ranges adalah untuk mengclear object yang berjalan agar data proses termasuk query tidak double
  rangeReportID = SAN_ReportDetailTB_ds.query().dataSourceTable(tablenum(SAN_ReportDetailTB)).addRange(fieldnum(SAN_ReportDetailTB, ReportID));
    rangeReportID.value(pecahstring);
  rangeReportID.status(RangeStatus::Locked);
        SAN_ReportDetailTB_ds.query().dataSourceTable(tablenum(SAN_ReportDetailTB)).addSortField(fieldNum(SAN_ReportDetailTB,Superurut),SortOrder::Ascending);
SAN_ReportDetailTB_ds.executeQuery();

AX : Mktime di AX

   pecahstring=(strFmt("%1%2%3%4%5%6",
                       date2Str
        (paramFromDate,
        321,
        DateDay::Digits2,

        DateSeparator::None, // separator1
        DateMonth::Digits2,
        DateSeparator::None, // separator2

        DateYear::Digits4
        )
        ,
        date2Str
        (paramToDate,
        321,
        DateDay::Digits2,

        DateSeparator::None, // separator1
        DateMonth::Digits2,
        DateSeparator::None, // separator2

        DateYear::Digits4
        )+'-'

                      ,int2str(combosatu)+'-',int642str ( Hirarki )+'-',datareaidmu+'-',int2str(ExtendResult)));

AX : Inisialisasi combobox, input field,selectbox

combosatu=ComboBox1.selection();//combobox
 paramFromDate = FromDate.dateValue();//date
    paramToDate =  ToDate.dateValue();//date
    ExtendResult=cbxExtendResult.value();//checkbox

Kamis, 03 Maret 2016

IT : Mengatasi Mozzila sering Errror

Cara Mengatasi Mozilla Firefox Crash Report Terbukti Ampuh - Apakah Anda pernah mengalami browser Mozilla Firefox yang sedang Anda gunakan tiba-tiba saja error atau mengalami Crash Report ?. Memang sungguh mengesalkan sekali. Saat mengalami firefox crash report biasanya muncul pop up Mozilla Crash Reporter dimana nanti ada 2 pilihan yang perlu Anda pilih yaitu Restart Firefox (Set Ulang) atau Quit Firefox (Keluar). Anda bisa coba pilih satu-satu yaitu pertama Restart Firefox dulu, kemudian nanti jika mengalami Crash Report lagi nanti Anda pilih Quit Firefox, kemudian buka browser Mozilla Firefox seperti semula. Kemudian nanti jika tetap saja mengalami Crash Report maka Anda perlu mencoba cara ampuh yang akan admin berikan.

Biasanya masalah firefox crash report ini terjadi pada Firefox versi 3.5.6 dan pada Firefox versi sekarang yaitu Firefox versi 18 sudah jarang terjadi Crash Report. Kali ini Blog Caratip akan memberikan tips bagaimana Cara mengatasi Mozilla Firefox Crash Report dengan mudah dan terbukti ampuh karena admin sudah membuktikannya sendiri. Untuk lebih jelasnya, silahkan Anda simak Cara mengatasi firefox crash report berikut ini:

Rabu, 02 Maret 2016

AX : Query ke langsung ke tabel Reguler AX

   QueryBuildRange                     querytanggal;
    QueryBuildRange                     querynik;


 querytanggal = ImportedAbsen_View_ds.query().dataSourceTable(tablenum(ImportedAbsen_View)).addRange(fieldnum(ImportedAbsen_View,PresenceDate));
     querytanggal.value(queryRange(paramFromDate, paramToDate));
 querytanggal.status(RangeStatus::Locked);

   if(stringeditsatu!="")
    {
       querynik = ImportedAbsen_View_ds.query().dataSourceTable(tablenum(ImportedAbsen_View)).addRange(fieldnum(ImportedAbsen_View,EmplId));
     querynik.value(stringeditsatu);
 querynik.status(RangeStatus::Locked);
    }
    ImportedAbsen_View_DS.executeQuery();


note :

function nya ada public void
public void processReport()
{

}

dan function tersebut tidak return value karena langsung ke tabel reguler

Selasa, 01 Maret 2016

IT : Membuat File ISO dengan Nero ( copied )

  • Pastikan sobat sudah meng-install software Nero dan sudah ada CD-RW atau DVD-RWnya. Oke langsung aja dibuka program Nero-nya.. Setelah Nero terbuka pilih menu Data à Make Data pada kotak tampilan Nero..