Sunday, August 24, 2014

TabunganKu

TabunganKu Yang Paling Bagus Dapat ATM

TabunganKu Mandiri dapat ATM yang bisa utk bayar BPJS?


Tuesday, August 12, 2014

WinPCap related

Change auto-start-at-boot setting:
[Winpcap-users] question about NPF driver
just type "sc config npf start= " to see available options and values
Note that "A space is required between the equal sign and the value"

Stopping the WinPcap Packet capture service
net stop npf

Where to find WinPcap in system control? (on Windows 8.1 Pro 64bit)
How can I directly confirm that this "service" is running on Windows 8?
WinPcap is a service (but mainly a driver), named NetGroup Packet Filter Driver. The fact is that it cannot be seen in the Windows Services Manager

Sunday, August 10, 2014

Selalu muncul popup stok tidak cukup saat input SO padahal "Item Availibility" cukup

Salah satu tambahan code di bawah ini akan memudahkan penelusuran:

Codeunit 5790 Available to Promise:
di function QtyAvailabletoPromise:
IF (UPPERCASE(USERID)='YOURNAME') THEN
MESSAGE('%1**%2**%3**%4',Item.Inventory,Item."Reserved Qty. on Inventory", ScheduledReceipt,GrossRequirement);

ATAU, di function CalcGrossRequirement:

IF (UPPERCASE(USERID)='YOURNAME') THEN BEGIN
MESSAGE('%1**%2',Item."Scheduled Need (Qty.)",Item."Res. Qty. on Prod. Order Comp.");
MESSAGE('%1**%2**%3',Item."Planning Issues (Qty.)",Item."Qty. on Sales Order",Item."Reserved Qty. on Sales Orders");
MESSAGE('%1**%2**%3',Item."Trans. Ord. Shipment (Qty.)",Item."Res. Qty. on Outbound Transfer", QtyOnPurchReturn);

Yang pernah terjadi adalah banyak PRO outstanding dimana hal tsb tidak diperhitungkan (tidak tampak) bila dilihat dari menu/form "Item Availibility"

Related
--------
Rumus utk kolom "Projected Available Balance" di report "Item Availibility":

Inventory + PlannedOrderReceipt + ScheduledReceipt - GrossRequirement
    = Planning Receipt (Qty.) +   = ("Scheduled Receipt (Qty.)" - "Reserved Qty. on Prod. Order") +   = ("Scheduled Need (Qty.)" - "Res. Qty. on Prod. Order Comp.") +
    Planned Order Receipt (Qty.) +   ( Purch. Req. Receipt (Qty.) - "Res. Qty. on Req. Line") +   Planning Issues (Qty.) +
    Purch. Req. Receipt (Qty.)   ("Qty. on Purch. Order" - "Reserved Qty. on Purch. Orders") +   ("Qty. on Sales Order" - "Reserved Qty. on Sales Orders") +
        ("Trans. Ord. Receipt (Qty.)" - "Res. Qty. on Inbound Transfer") +   ("Qty. on Service Order" - "Res. Qty. on Service Orders") +
        "Qty. in Transit" +   ("Trans. Ord. Shipment (Qty.)" - "Res. Qty. on Outbound Transfer") +
        QtyOnSalesReturn   QtyOnPurchReturn
Qty. on Purch. Order Sum("Purchase Line"."Outstanding Qty. (Base)" WHERE (Document Type=CONST(Order),Type=CONST(Item),No.=FIELD(No.),Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter),Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter),Location Code=FIELD(Location Filter),Drop Shipment=FIELD(Drop Shipment Filter),Variant Code=FIELD(Variant Filter),Expected Receipt Date=FIELD(Date Filter)))
Reserved Qty. on Purch. Orders Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.),Source Type=CONST(39),Source Subtype=CONST(1),Reservation Status=CONST(Reservation),Location Code=FIELD(Location Filter),Variant Code=FIELD(Variant Filter),Expected Receipt Date=FIELD(Date Filter)))
Res. Qty. on Outbound Transfer -Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.),Source Type=CONST(5741),Source Subtype=CONST(0),Reservation Status=CONST(Reservation),Location Code=FIELD(Location Filter),Variant Code=FIELD(Variant Filter),Shipment Date=FIELD(Date Filter)))
Scheduled Receipt (Qty.) Sum("Prod. Order Line"."Remaining Qty. (Base)" WHERE (Status=FILTER(Planned..Released),Item No.=FIELD(No.),Variant Code=FIELD(Variant Filter),Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter),Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter),Location Code=FIELD(Location Filter),Due Date=FIELD(Date Filter)))
Scheduled Need (Qty.) Sum("Prod. Order Component"."Remaining Qty. (Base)" WHERE (Status=FILTER(Planned..Released),Item No.=FIELD(No.),Variant Code=FIELD(Variant Filter),Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter),Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter),Location Code=FIELD(Location Filter),Due Date=FIELD(Date Filter)))
Reserved Qty. on Prod. Order Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.),Source Type=CONST(5406),Source Subtype=FILTER(1..3),Reservation Status=CONST(Reservation),Location Code=FIELD(Location Filter),Variant Code=FIELD(Variant Filter),Expected Receipt Date=FIELD(Date Filter)))
Res. Qty. on Prod. Order Comp. -Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.),Source Type=CONST(5407),Source Subtype=FILTER(1..3),Reservation Status=CONST(Reservation),Location Code=FIELD(Location Filter),Variant Code=FIELD(Variant Filter),Shipment Date=FIELD(Date Filter)))
Res. Qty. on Req. Line Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.),Source Type=CONST(246),Source Subtype=FILTER(0),Reservation Status=CONST(Reservation),Location Code=FIELD(Location Filter),Variant Code=FIELD(Variant Filter),Expected Receipt Date=FIELD(Date Filter)))
Qty. in Transit Sum("Transfer Line"."Qty. in Transit (Base)" WHERE (Derived From Line No.=CONST(0),Item No.=FIELD(No.),Transfer-to Code=FIELD(Location Filter),Variant Code=FIELD(Variant Filter),Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter),Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter),Receipt Date=FIELD(Date Filter)))
Trans. Ord. Receipt (Qty.) Sum("Transfer Line"."Outstanding Qty. (Base)" WHERE (Derived From Line No.=CONST(0),Item No.=FIELD(No.),Transfer-to Code=FIELD(Location Filter),Variant Code=FIELD(Variant Filter),Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter),Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter),Receipt Date=FIELD(Date Filter)))
Planning Issues (Qty.) Sum("Planning Component"."Expected Quantity (Base)" WHERE (Item No.=FIELD(No.),Due Date=FIELD(Date Filter),Location Code=FIELD(Location Filter),Variant Code=FIELD(Variant Filter),Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter),Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter),Planning Line Origin=CONST(" ")))
Planning Receipt (Qty.) Sum("Requisition Line"."Quantity (Base)" WHERE (Type=CONST(Item),No.=FIELD(No.),Due Date=FIELD(Date Filter),Location Code=FIELD(Location Filter),Variant Code=FIELD(Variant Filter),Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter),Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter)))
Planned Order Receipt (Qty.) Sum("Prod. Order Line"."Remaining Qty. (Base)" WHERE (Status=CONST(Planned),Item No.=FIELD(No.),Variant Code=FIELD(Variant Filter),Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter),Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter),Location Code=FIELD(Location Filter),Due Date=FIELD(Date Filter)))
Purch. Req. Receipt (Qty.) Sum("Requisition Line"."Quantity (Base)" WHERE (Type=CONST(Item),No.=FIELD(No.),Variant Code=FIELD(Variant Filter),Location Code=FIELD(Location Filter),Shortcut Dimension 1 Code=FIELD(Global Dimension 1 Filter),Shortcut Dimension 2 Code=FIELD(Global Dimension 2 Filter),Due Date=FIELD(Date Filter),Planning Line Origin=CONST(" ")))
Reserved Qty. on Inventory Sum("Reservation Entry"."Quantity (Base)" WHERE (Item No.=FIELD(No.),Source Type=CONST(32),Source Subtype=CONST(0),Reservation Status=CONST(Reservation),Serial No.=FIELD(Serial No. Filter),Lot No.=FIELD(Lot No. Filter),Location Code=FIELD(Location Filter),Variant Code=FIELD(Variant Filter)))
// Qty. on Sales Return
WITH SalesLine DO BEGIN
  SETCURRENTKEY("Document Type",Type,"No.","Variant Code","Drop Shipment","Location Code","Shipment Date");
  SETRANGE("Document Type","Document Type"::"Return Order");
  SETRANGE(Type,Type::Item);
  SETRANGE("No.",Item."No.");
  SETFILTER("Location Code",Item.GETFILTER("Location Filter"));
  SETFILTER("Drop Shipment",Item.GETFILTER("Drop Shipment Filter"));
  SETFILTER("Variant Code",Item.GETFILTER("Variant Filter"));
  SETRANGE("Shipment Date",Item.GETRANGEMIN(Item."Date Filter"),Item.GETRANGEMAX(Item."Date Filter"));
  CALCSUMS("Outstanding Qty. (Base)");
  QtyOnSalesReturn := "Outstanding Qty. (Base)";
  RESET;
END;
WITH ReservationEntry DO BEGIN
  SETCURRENTKEY(
    "Item No.","Source Type","Source Subtype","Reservation Status",
    "Location Code","Variant Code","Shipment Date","Expected Receipt Date");
  SETRANGE("Item No.",Item."No.");
  SETRANGE("Source Type",DATABASE::"Sales Line");
  SETRANGE("Source Subtype",5);
  SETRANGE("Reservation Status","Reservation Status"::Reservation);
  SETFILTER("Location Code",Item.GETFILTER("Location Filter"));
  SETFILTER("Variant Code",Item.GETFILTER("Variant Filter"));
  SETRANGE("Shipment Date",Item.GETRANGEMIN(Item."Date Filter"),Item.GETRANGEMAX(Item."Date Filter"));
  CALCSUMS("Quantity (Base)");
  QtyOnSalesReturn -= "Quantity (Base)";
  RESET;
END;
// Qty. on Purchase Return
WITH PurchLine DO BEGIN
  SETCURRENTKEY("Document Type",Type,"No.","Variant Code","Drop Shipment","Location Code","Expected Receipt Date");
  SETRANGE("Document Type","Document Type"::"Return Order");
  SETRANGE(Type,Type::Item);
  SETRANGE("No.",Item."No.");
  SETFILTER("Location Code",Item.GETFILTER("Location Filter"));
  SETFILTER("Drop Shipment",Item.GETFILTER("Drop Shipment Filter"));
  SETFILTER("Variant Code",Item.GETFILTER("Variant Filter"));
  SETRANGE("Expected Receipt Date",Item.GETRANGEMIN(Item."Date Filter"),Item.GETRANGEMAX(Item."Date Filter"));
  CALCSUMS("Outstanding Qty. (Base)");
  QtyOnPurchReturn := "Outstanding Qty. (Base)";
  RESET;
END;
WITH ReservationEntry DO BEGIN
  SETCURRENTKEY(
    "Item No.","Source Type","Source Subtype","Reservation Status",
    "Location Code","Variant Code","Shipment Date","Expected Receipt Date");
  SETRANGE("Item No.",Item."No.");
  SETRANGE("Source Type",DATABASE::"Purchase Line");
  SETRANGE("Source Subtype",5);
  SETRANGE("Reservation Status","Reservation Status"::Reservation);
  SETFILTER("Location Code",Item.GETFILTER("Location Filter"));
  SETFILTER("Variant Code",Item.GETFILTER("Variant Filter"));
  SETRANGE("Expected Receipt Date",Item.GETRANGEMIN(Item."Date Filter"),Item.GETRANGEMAX(Item."Date Filter"));
  CALCSUMS("Quantity (Base)");
  QtyOnPurchReturn += "Quantity (Base)";
  RESET;
END;

Wednesday, August 6, 2014

Check pending file deletion on boot

A handy WMI script to check for pending file rename operations
Registry key:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\"PendingFileRenameOperations"