web
You’re offline. This is a read only version of the page.
close
Skip to main content
Community site session details

Community site session details

Session Id :

SQL Scripts for Microsoft Dynamics GP: Table Function to Split String on Delimiter

Ian Grieve Profile Picture Ian Grieve 22,784
Microsoft Dynamics GPThis script is part of the SQL Scripts for Microsoft Dynamics GP where I will be posted the scripts I wrote against Microsoft Dynamics GP over the 19 years before I stopped working with Dynamics GP.

This script creates a table function which will split a string based on the supplied delimiter; it was created for a user who split their item number into segments, separated with hyphens:

/*
Created by Ian Grieve of azurecurve | Ramblings of an IT Professional (http://www.azurecurve.co.uk) This code is licensed under the Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International (CC BY-NC-SA 4.0 Int). */
IF OBJECT_ID('[dbo].[uf_AZRCRV_SplitString]') IS NOT NULL
BEGIN
DROP FUNCTION [dbo].[uf_AZRCRV_SplitString];
END;
GO

CREATE FUNCTION [dbo].[uf_AZRCRV_SplitString](
@String VARCHAR(8000),
@Delimiter VARCHAR(10)
)
RETURNS @ReturnTable TABLE(
id int IDENTITY(1,1) NOT NULL,
part varchar(50) NULL
)
AS
BEGIN
Declare @iSpaces int
Declare @part varchar(50)

Set @String = RTRIM(@String)

--initialize spaces
Select @iSpaces = charindex(@Delimiter, @String, 0)
While @iSpaces > 0

Begin
Select @part = substring(@String, 0, charindex(@Delimiter, @String, 0))

Insert Into @ReturnTable(part)
Select @part

Select @String = substring(@String,charindex(@Delimiter, @String, 0) + len(@Delimiter),len(@String) - charindex(' ', @String, 0))

Select @iSpaces = charindex(@Delimiter, @String, 0)
end

If len(@String) > 0
Insert Into @ReturnTable
Select @String

RETURN
END
GO

Click to show/hide the SQL Scripts for Microsoft Dynamics GP Series Index

SQL Scripts for Microsoft Dynamics GP
Sales Transactions (Work) Against a Specific Site
Update Site Descriptions From CSV
Select All Primary Keys and Generate ALTER Script
Export Open/History PM Transactions After a Specified Date
Migrate Vendor Emails from Active Docs to Standard Email Fields
Update Inventory Accounts from Item Class
Update Accounts Payable Distribution on Work Status PM Transactions from Posting Account Setup
Update Inventory Distribution on Work Status Purchase Orders from the Item Card
Update Accrued Purchases Distribution on History Receipts from Posting Account Setup
Insert National Accounts from CSV
Import Site Bins From CSV
Update Accounts and Distributions on Work Status Sales Transactions from Item Card, Tax Details or Posting Account Setup
Assign All Items to All Site Bins
SQL Trogger on PO invoice Insert to Change GL posted Date
PO Receipt History View
Workflow Assignment Review
Sales Invoice Query
Assembly Transaction Quantities Required
Generate Standard Cost Update Macro from Text File Import
Validate and Insert/Update Vendor Emails from a Text File
Update Min Order Qty and Average Lead Time on Vendor Item From Text File
Update Mfg Cost Accounts from Mfg Item Class Setup
Create Macro to Delete Items
Update Item Resource Planning on Item Quantity Master from Text File
Update Item Engineering File from a Text File
Insert Mfg BOMs from Text File
Insert Manufacturing Routings from Text File
Return Top Level BOM for Manufacturing Orders
Simple RMA Audit
Allow Workflow Originator to be an Approver
Change Web Service URi
Prefix Companies Names with System Designator
Purchased Items With Serial Numbers and Linked Sales Transactions
Script to Set Transactions as Included on VAT Daybook Return
Get Alpha Characters from an Alphanumeric String
Get Numeric Characters from an Alphanumeric String
Select Next Temporary Creditor ID
Compare Ship To Address on Work Sales Trx Against Customer
Update Ship To Name on Work Sales Transactions to Match the Customer Name
Table Function to Split String on Delimiter
Update Item Replenishment Method for Manufacturing

Read original post SQL Scripts for Microsoft Dynamics GP: Table Function to Split String on Delimiter at azurecurve|Ramblings of an IT Professional


This was originally posted here.

Comments

*This post is locked for comments