LOGO KAMPANYALI URUN SIPARISINDE PROMOSYON STOKDAN DUSMEME SORUNU

SORUN ORFLINE STATUS ANA MALZEME DISINDA 0DA(ÖNERİ DURUMU) KALMAKTA FAKAT PARAMETREDEN 4 AYARLI(SEVKEDİLEBİLİR)

URUN LOGO TIGER ENTERPRISE 2.64

SELECT ORFLINE.DATE_, ORFLINE.LOGICALREF, ORFLINE.ORDFICHEREF,
         ORFLINE.STOCKREF,
         ORFLINE.LINETYPE,
         ORFLINE.STATUS,
		        (
           SELECT TOP 1
                  O2.STATUS
           FROM dbo.LG_101_01_ORFLINE O2
           WHERE O2.ORDFICHEREF = ORFLINE.ORDFICHEREF
                 AND O2.LINETYPE = 0
                 AND O2.STATUS = 4
       ) FROM LG_101_01_ORFLINE ORFLINE WITH(NOLOCK) WHERE  ORFLINE.TRCODE=1 AND   ORFLINE.STATUS <> 4   AND 
       (
           SELECT TOP 1
                  O2.STATUS
           FROM dbo.LG_101_01_ORFLINE O2
           WHERE O2.ORDFICHEREF = ORFLINE.ORDFICHEREF
                 AND O2.LINETYPE = 0
                 AND O2.STATUS = 4
       )=4 AND ORFLINE.LINETYPE=1 ORDER BY ORFLINE.DATE_ ASC

 

	    
	   UPDATE LG_101_01_ORFLINE SET STATUS=4 FROM  LG_101_01_ORFLINE ORFLINE WHERE ORFLINE.TRCODE=1 AND   ORFLINE.STATUS <> 4   AND 
       (
           SELECT TOP 1
                  O2.STATUS
           FROM dbo.LG_101_01_ORFLINE O2
           WHERE O2.ORDFICHEREF = ORFLINE.ORDFICHEREF
                 AND O2.LINETYPE = 0
                 AND O2.STATUS = 4
       ) =4

LOGO INVDEFDE OLMAYAN ITEMLERI SQLDEN EKLEME

INVDEF TABLOSU : URUNLERIN GENEL OLARAK AMBAR BAZLI NEGATIF SEVIYEYE DUSUP DUSMEMESININ BILGISINI ICERIR

INSERT INTO LG_101_INVDEF (INVENNO,ITEMREF,MINLEVEL,MAXLEVEL,SAFELEVEL,LOCATIONREF, PERCLOSEDATE,
ABCCODE,MINLEVELCTRL,MAXLEVELCTRL,SAFELEVELCTRL,NEGLEVELCTRL,IOCTRL,VARIANTREF,OUTCTRL)  
SELECT  W.NR INVENNO, I.LOGICALREF ITEMREF, 0 MINLEVEL,0 MAXLEVEL, 0 SAFELEVEL, 0 LOCATIONREF, NULL PERCLOSEDATE,
0 ABCCODE, 0 MINLEVELCTRL, 0 MAXLEVELCTRL, 0 SAFELEVELCTRL, 0 NEGLEVELCTRL, 0 IOCTRL, 0 VARIANTREF, 0 OUTCTRL FROM L_CAPIWHOUSE W
CROSS JOIN LG_101_ITEMS I  
WHERE FIRMNR=101 AND I.CARDTYPE=1 AND I.LOGICALREF NOT IN ( select ID.ITEMREF from  LG_101_INVDEF ID)

SQL SERVER SEE CHANGED ROWS ON DATA CHANGE CALCULATOR

DROP TABLE DIFFERENCE1
DROP TABLE DIFFERENCE2

--RUN BEFORE BEFORE DATA CHANGE

SELECT  (SCHEMA_NAME(A.schema_id) + '.' + A.Name) AS TableName  
, SUM(B.rows) AS RecordCount  
INTO DIFFERENCE1
FROM sys.objects A  
INNER JOIN sys.partitions B ON A.object_id = B.object_id  
WHERE A.type = 'U'  
GROUP BY A.schema_id, A.Name  

--RUN AFTER DATA CHANGE


SELECT  (SCHEMA_NAME(A.schema_id) + '.' + A.Name) AS TableName  
, SUM(B.rows) AS RecordCount  
INTO DIFFERENCE2
FROM sys.objects A  
INNER JOIN sys.partitions B ON A.object_id = B.object_id  
WHERE A.type = 'U'  
GROUP BY A.schema_id, A.Name  

--SEE ROWS CHANGED
SELECT *  FROM DIFFERENCE1 LEFT JOIN DIFFERENCE2 ON DIFFERENCE1.TABLENAME=DIFFERENCE2.TABLENAME
WHERE DIFFERENCE1.RECORDCOUNT<>DIFFERENCE2.RECORDCOUNT

SQL SERVER 2017 READONLY TO SPECIFIC DATABASE


--USERNAME ADI HASELU
--DB NAME HASEL
CREATE LOGIN HASELU
    WITH PASSWORD = 'HASELU';
USE HASEL;
CREATE USER HASELU FOR LOGIN HASELU;
GO 
GRANT SELECT TO HASELU

USE master;
GO
DENY VIEW ANY DATABASE TO HASELU;

USE HASEL
GO
SP_DROPUSER 'HASELU'  
GO
SP_CHANGEDBOWNER 'HASELU' 

USE master;
GO
ALTER AUTHORIZATION ON DATABASE::HASEL TO HASELU;
GO

TESTED ON SQL SERVER 2017

LOGO SAYIMIN EKSIKMI FAZLAMI OLDUGU SORGUSU


SELECT  LOGICALREF, LOGICALREFPDA,STFICHEREF, FIS FROM (
SELECT AMOUNT SAYILAN,ONHAND STOKTA,CASE WHEN ONHAND<AMOUNT THEN 'SAYIM EKSIGI' WHEN ONHAND>AMOUNT THEN 'SAYIM FAZLASI' ELSE '2' END FIS,* FROM(
SELECT  *,(SELECT  ISNULL(SUM(STITOTS.ONHAND),0)  FROM LV_119_01_STINVTOT STITOTS WITH(NOLOCK)  WHERE (STITOTS.INVENNO = STL.SOURCEINDEX) AND 
(STITOTS.STOCKREF =  STL.STOCKREF) AND (STITOTS.DATE_  <= STL.DATE_)) ONHAND FROM BM_PDA_STLINE STL WHERE TRCODE=55) AS T) AS T2 GROUP BY  LOGICALREF, LOGICALREFPDA,STFICHEREF, FIS

VISUAL STUDIO C# RUN WINDOWS SERVICE WITHOUT INSTALL

using System;
using System.Collections.Generic;
using System.Linq;
using System.ServiceProcess;
using System.Text;
using System.Threading.Tasks;

namespace BMSPDAWINDOWS_SERVICE {
    static class Program {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        static void Main() {
#if (!DEBUG)
            ServiceBase[] ServicesToRun;
            ServicesToRun = new ServiceBase[]
            {
                new Service1()
            };
            ServiceBase.Run(ServicesToRun);
#else
            Service1 myServ = new Service1();
            myServ.START_PROCESS(true);
            // here Process is my Service function
            // that will run when my service onstart is call
            // you need to call your own method or function name here instead of Process();
#endif
        }
    }
}

PROGRAM.CS SHOULD LIKE ABOVE

NOTE: IN SERVICE1.CS SHOULD MADE START_PROCESS PUBLIC

BİR UYGULAMA BAŞLARKEN HANGİ KOMUT SATIRINDAN BAŞLADIĞINI BULMAK

Örnek olarak windows device emulatorde (device managerda) emulatorun hangi komut satırıyla başlaması gerektiğine ihtiyacım oldu çözümü: https://download.sysinternals.com/files/ProcessMonitor.zip

Nasıl ? :Önce device emulator manager açılır

Sonra Procmon açılıp pid device emulatorun pidi filtreye eklenir ve ok basılır

Son olarak device emulator managerda ilgili emulatore sağ tıklanıp connecte basılır

ve procmandan ilgili emulatorun komut satırı görülebilir: