http://mohammadnazmul.blogspot.com/ https://nextleap.app/online-compiler/sql-programming
Sunday, September 7, 2025
SP
@PartNumber AS VARCHAR(80),
@PO AS VARCHAR(80) = NULL,
@Badge INT = NULL,
@OrderType AS VARCHAR(50) = NULL,
@Quantity INT = NULL,
@Result BIT output
AS
BEGIN
SET nocount ON;
IF @OrderType IS NULL
BEGIN
SET @Result = 1;
END
else
BEGIN
SET @Result = 0;
END
END
BEGIN
IF EXISTS ( 1 )
BEGIN
SET @Result = 1;
END
else
BEGIN
-- Check the second condition
IF EXISTS ( 1 )
BEGIN
SET @Result = 1;
END
else
BEGIN
SET @Result = 0;
END
END
END
END
Debug
USE [TeamViewer_DYN];
DECLARE @PO NVARCHAR(50) = '000044444447';
DECLARE
@Material NVARCHAR(50),
@QuantityCOHV INT,
@CartType NVARCHAR(50),
@CartID INT,
@CartName NVARCHAR(50),
@CartTypeVal NVARCHAR(50),
@KItem NVARCHAR(50),
@ProfitCenter NVARCHAR(50);
-- Step 1: Get COHV Order details
SELECT
@Material = ItemID,
@QuantityCOHV = QTY,
@ProfitCenter = ProfitCenter
FROM EWI_DataWarehouse.dbo.COHV
WHERE PO = @PO;
PRINT 'Step 1: Material=' + ISNULL(@Material,'NULL') +
', QuantityCOHV=' + ISNULL(CAST(@QuantityCOHV AS NVARCHAR),'NULL') +
', ProfitCenter=' + ISNULL(@ProfitCenter,'NULL');
-- Step 2: Get KItem from BOMDTL
SET @KItem = (
SELECT TOP 1 B.Component
FROM EWI_DataWarehouse.dbo.BOMDTL B
WHERE B.Item = @Material AND B.Component LIKE '%-K'
);
PRINT 'Step 2: KItem=' + ISNULL(@KItem,'NULL');
-- Step 3: Determine CartType
SET @CartType = CASE
WHEN @Material LIKE 'N10%' THEN 'Box'
WHEN @Material LIKE 'N22%' THEN 'Cover'
ELSE NULL
END;
PRINT 'Step 3: CartType=' + ISNULL(@CartType,'NULL');
-- Step 4: Get BOM Details into temp table
SELECT DISTINCT
@Material AS Material,
@QuantityCOHV AS COHVQty,
B.Component,
B.Qty,
P.Bin AS PickBin
INTO #KitComponents
FROM EWI_DataWarehouse.dbo.BOMDTL B
LEFT JOIN TeamViewer_DYN.dbo.PickBins P
ON B.Component = P.Material
WHERE B.Item = @KItem;
PRINT 'Step 4: Inserted into #KitComponents';
SELECT * FROM #KitComponents; -- Debug view
-- Step 5: Get the next available CartID and CartType
SELECT TOP 1
@CartID = CartID,
@CartName = CartName,
@CartTypeVal = CartType
FROM TeamViewer_DYN.dbo.Carts
WHERE inUse = 0 AND CartType = @CartType
ORDER BY CartID;
PRINT 'Step 5: CartID=' + ISNULL(CAST(@CartID AS NVARCHAR),'NULL') +
', CartName=' + ISNULL(@CartName,'NULL') +
', CartTypeVal=' + ISNULL(@CartTypeVal,'NULL');
IF @CartID IS NULL
BEGIN
PRINT 'Step 5: NO CARTS AVAILABLE';
DROP TABLE #KitComponents;
RETURN;
END
-- Step 6: Insert into ScanOrderHistory
DECLARE @Suffixes TABLE (Suffix CHAR(1));
IF @QuantityCOHV = 1
INSERT INTO @Suffixes VALUES ('A');
ELSE IF @QuantityCOHV = 2
INSERT INTO @Suffixes VALUES ('A'), ('B');
ELSE IF @QuantityCOHV = 3
INSERT INTO @Suffixes VALUES ('A'), ('B'), ('C');
ELSE IF @QuantityCOHV = 4
INSERT INTO @Suffixes VALUES ('A'), ('B'), ('C'), ('D');
ELSE
INSERT INTO @Suffixes VALUES ('A');
PRINT 'Step 6: Suffixes added';
SELECT * FROM @Suffixes;
INSERT INTO [TeamViewer_DYN].[dbo].[ScanOrderHistory] (
PO, Material, COHVQty, Component, BOMQty, CartID, CartType, CartName, CartBin, PickBin, ProfitCenter
)
SELECT
@PO,
kc.Material,
kc.COHVQty,
kc.Component,
kc.Qty,
@CartID,
@CartTypeVal,
@CartName,
CAST(@CartType + CAST(@CartID AS VARCHAR(10)) AS VARCHAR(20)) + s.Suffix AS CartBin,
kc.PickBin,
@ProfitCenter
FROM #KitComponents kc
CROSS JOIN @Suffixes s
WHERE kc.PickBin IS NOT NULL;
PRINT 'Step 6: Inserted into ScanOrderHistory';
-- Step 7: Mark the cart as InUse
UPDATE TeamViewer_DYN.dbo.Carts
SET inUse = 1
WHERE CartID = @CartID;
PRINT 'Step 7: Cart marked as InUse';
-- Step 8: Return inserted rows
PRINT 'Step 8: Returning inserted rows';
SELECT * FROM [TeamViewer_DYN].[dbo].[ScanOrderHistory] WHERE PO = @PO;
DROP TABLE #KitComponents;
Tuesday, August 5, 2025
Saturday, July 26, 2025
SQL
Saturday, June 21, 2025
TWIN MODULE - Dyncraft
eBom vs mBom
SELECT distinct * FROM [DataStage].[dbo].[CUMEBOM_LOADING] as CL where CL.LineSeqNbr='T0890F0' and CL.ChassisNbr='790040';
select * from EWI_DataWarehouse.dbo.OpenJITs as OJT where OJT.LineSeqNbr ='T0890F0';
select * from EWI_DataWarehouse.dbo.OpenJITs as OJT where OJT.ItemID ='M86-6301-127106';
SignalR
--ALTER DATABASE SignalR SET ENABLE_BROKER WITH ROLLBACK IMMEDIATE;
SELECT is_broker_enabled FROM sys.databases WHERE name = 'SignalR';
Persistent Connection:
This means that the connection between the client (such as a web browser) and the server stays open and active over a period of time, rather than opening and closing repeatedly for each communication.
SignalR leverages WebSockets or other transport alternatives:
SignalR is a real-time communication library for web applications. It primarily uses WebSockets, which is a modern protocol that allows two-way communication between the client and server over a single, long-lived connection
SignalR ensures that the client and server remain continuously connected and can send messages to each other in real-time. This is useful for applications like chat apps, live notifications, gaming, or any scenario requiring immediate updates without the need to refresh the page
https://assemblytools.na.panasonic.com/assembly-tools/accessories/controllers
Tuesday, April 15, 2025
Tuesday, April 1, 2025
Angular
✅ What is Angular?
English:
Angular is a TypeScript-based front-end framework developed by Google. It is used to build dynamic, single-page web applications (SPAs) with a component-based architecture.
Bangla:
Angular হলো একটি TypeScript-ভিত্তিক ফ্রন্ট-এন্ড ফ্রেমওয়ার্ক, যা Google দ্বারা তৈরি। এটি ডাইনামিক, সিঙ্গেল-পেজ ওয়েব অ্যাপ্লিকেশন (SPA) তৈরি করতে ব্যবহৃত হয় এবং কম্পোনেন্ট-ভিত্তিক আর্কিটেকচার অনুসরণ করে।
✅ Core Features (মূল বৈশিষ্ট্য):
English:
- Component-based architecture
- Two-way data binding
- Dependency Injection
- Routing for SPAs
- Built-in directives and pipes
Bangla:
- কম্পোনেন্ট-ভিত্তিক আর্কিটেকচার
- টু-ওয়ে ডাটা বাইন্ডিং
- ডিপেনডেন্সি ইনজেকশন
- SPA-এর জন্য রাউটিং
- বিল্ট-ইন ডিরেক্টিভ এবং পাইপস
✅ Why Use Angular? (কেন Angular ব্যবহার করব?)
English:
- Strong structure for large applications
- Built-in tools for forms, HTTP, and routing
- High performance and maintainability
- Backed by Google and large community
Bangla:
- বড় অ্যাপ্লিকেশনের জন্য শক্তিশালী স্ট্রাকচার
- ফর্ম, HTTP, এবং রাউটিং-এর জন্য বিল্ট-ইন টুলস
- উচ্চ পারফরম্যান্স এবং সহজ মেইনটেন্যান্স
- Google এবং বড় কমিউনিটির সাপোর্ট
✅ Angular Project Structure
my-angular-app/ │ ├── node_modules/ → **English:** Installed dependencies │ → **Bangla:** ইনস্টল করা লাইব্রেরি ও প্যাকেজ │ ├── src/ → **English:** Main source code folder │ │ → **Bangla:** মূল সোর্স কোড ফোল্ডার │ ├── app/ → **English:** Application components, modules, services │ │ → **Bangla:** অ্যাপ্লিকেশনের কম্পোনেন্ট, মডিউল, সার্ভিস │ ├── assets/ → **English:** Images, CSS, static files │ │ → **Bangla:** ইমেজ, CSS, স্ট্যাটিক ফাইল │ ├── environments/ → **English:** Environment-specific configs │ │ → **Bangla:** এনভায়রনমেন্ট অনুযায়ী কনফিগারেশন │ ├── index.html → **English:** Main HTML file │ │ → **Bangla:** প্রধান HTML ফাইল │ ├── main.ts → **English:** Entry point for Angular app │ │ → **Bangla:** Angular অ্যাপের এন্ট্রি পয়েন্ট │ ├── styles.css → **English:** Global styles │ → **Bangla:** গ্লোবাল স্টাইল │ ├── angular.json → **English:** Angular configuration file │ → **Bangla:** Angular কনফিগারেশন ফাইল ├── package.json → **English:** Project dependencies and scripts │ → **Bangla:** প্রোজেক্টের ডিপেনডেন্সি ও স্ক্রিপ্ট ├── tsconfig.json → **English:** TypeScript configuration │ → **Bangla:** TypeScript কনফিগারেশন✅ Key Points
- app/ ফোল্ডারে আপনার কম্পোনেন্ট, সার্ভিস, মডিউল থাকবে।
- assets/ ফোল্ডারে ইমেজ, CSS, এবং অন্যান্য স্ট্যাটিক ফাইল থাকবে।
- angular.json ফাইল প্রোজেক্টের বিল্ড ও কনফিগারেশন নিয়ন্ত্রণ করে।
- package.json ফাইল ডিপেনডেন্সি ও npm স্ক্রিপ্ট ম্যানেজ করে।
1. Angular Service তৈরি কিভাবে?
English:
Angular service is used to share data or logic across components. You create it using Angular CLI:ng generate service my-serviceThis createsmy-service.service.tsfile. Then you inject it into a component using Dependency Injection.Bangla:
Angular সার্ভিস ব্যবহার করা হয় কম্পোনেন্টগুলোর মধ্যে ডাটা বা লজিক শেয়ার করার জন্য। CLI দিয়ে সার্ভিস তৈরি করা যায়:ng generate service my-serviceএটিmy-service.service.tsফাইল তৈরি করবে। এরপর সার্ভিসকে কম্পোনেন্টে Dependency Injection এর মাধ্যমে ব্যবহার করা হয়।
✅ 2. Angular Module কিভাবে কাজ করে?
English:
Angular module (@NgModule) is a container for components, directives, pipes, and services. It organizes the application into functional blocks.- AppModule is the root module.
- Modules declare components and import other modules.
Bangla:
Angular মডিউল (@NgModule) হলো একটি কন্টেইনার যেখানে কম্পোনেন্ট, ডিরেক্টিভ, পাইপ এবং সার্ভিস থাকে। এটি অ্যাপ্লিকেশনকে ফাংশনাল ব্লকে ভাগ করে।- AppModule হলো মূল মডিউল।
- মডিউল কম্পোনেন্ট ডিক্লেয়ার করে এবং অন্য মডিউল ইমপোর্ট করে।
✅ 3. Angular Component Lifecycle (কম্পোনেন্টের জীবনচক্র):
English:
Angular components have lifecycle hooks:- ngOnInit() – Called after component initialization.
- ngOnChanges() – Called when input properties change.
- ngDoCheck() – Custom change detection.
- ngAfterViewInit() – After view initialization.
- ngOnDestroy() – Before component is destroyed.
Bangla:
Angular কম্পোনেন্টের লাইফসাইকেল হুকগুলো হলো:- ngOnInit() – কম্পোনেন্ট ইনিশিয়ালাইজ হওয়ার পর কল হয়।
- ngOnChanges() – ইনপুট প্রপার্টি পরিবর্তন হলে কল হয়।
- ngDoCheck() – কাস্টম চেঞ্জ ডিটেকশন।
- ngAfterViewInit() – ভিউ ইনিশিয়ালাইজ হওয়ার পর কল হয়।
- ngOnDestroy() – কম্পোনেন্ট ধ্বংস হওয়ার আগে কল হয়।
✅ Why Angular Component?
English:
Angular components are the building blocks of an Angular application. They allow you to:- Encapsulate UI and Logic – Each component handles its own HTML, CSS, and TypeScript logic.
- Reusability – Components can be reused across different parts of the application.
- Maintainability – Breaking the app into smaller components makes it easier to manage and update.
- Data Binding – Components support one-way and two-way data binding for dynamic UI updates.
- Lifecycle Management – Components have lifecycle hooks for initialization, updates, and cleanup.
Bangla:
Angular কম্পোনেন্ট হলো অ্যাপ্লিকেশনের মূল বিল্ডিং ব্লক। এর সুবিধাগুলো হলো: - UI এবং লজিক আলাদা রাখা – প্রতিটি কম্পোনেন্টের নিজস্ব HTML, CSS, এবং TypeScript লজিক থাকে।
- পুনঃব্যবহারযোগ্যতা – কম্পোনেন্টগুলো অ্যাপের বিভিন্ন অংশে পুনঃব্যবহার করা যায়।
- সহজ মেইনটেন্যান্স – ছোট ছোট কম্পোনেন্টে ভাগ করলে অ্যাপ ম্যানেজ করা সহজ হয়।
- ডাটা বাইন্ডিং – কম্পোনেন্টে ওয়ান-ওয়ে এবং টু-ওয়ে ডাটা বাইন্ডিং সাপোর্ট করে।
- লাইফসাইকেল ম্যানেজমেন্ট – কম্পোনেন্টে ইনিশিয়ালাইজেশন, আপডেট এবং ক্লিনআপের জন্য লাইফসাইকেল হুক থাকে।
Observables and Promises are two different ways to handle asynchronous operation
Microsoft Power Platform
Microsoft Power Platform একটি কম্প্রিহেনসিভ টুলসেট, যা ব্যবসায়িক অ্যানালাইটিক্স, অ্যাপ্লিকেশন ডেভেলপমেন্ট, স্বয়ংক্রিয় কাজ এবং ভার্চুয়াল...
-
namespace WindowsFormsApp { public interface IEmployeeSal { float GetSalary(int basic,float dividend,float commission); ...
-
https://rubolchow.blogspot.com/2023/02/blog-post.html https://nodejs.org/en/download/ Publish : ng build is the command you use when you...
-
What is CQRS? English Answer CQRS (Command Query Responsibility Segregation) is a design pattern that separates write operations (Commands)...