Here is a script that will write code to initialize a Dynamics GP 10.0 database. It depends on a table called _temp that has a list of tables to initialize. This script will scan that table and write insert statements for all the tables in the source table
-- =============================================
--
-- =============================================
IF OBJECT_ID('tempdb..#tables', 'U') IS NOT NULL begin
DROP TABLE #tables
end
GO
SET NOCOUNT on
CREATE TABLE #tables (tablename VARCHAR(10))
INSERT INTO #tables (tablename) VALUES ('CM00100')
INSERT INTO #tables (tablename) VALUES ('CM40100')
INSERT INTO #tables (tablename) VALUES ('CM40101')
INSERT INTO #tables (tablename) VALUES ('GL00100')
INSERT INTO #tables (tablename) VALUES ('GL00102')
INSERT INTO #tables (tablename) VALUES ('GL00103')
INSERT INTO #tables (tablename) VALUES ('GL00104')
INSERT INTO #tables (tablename) VALUES ('GL00105')
INSERT INTO #tables (tablename) VALUES ('GL00200')
INSERT INTO #tables (tablename) VALUES ('GL00201')
INSERT INTO #tables (tablename) VALUES ('GL40000')
INSERT INTO #tables (tablename) VALUES ('GL40100')
INSERT INTO #tables (tablename) VALUES ('GL40101')
INSERT INTO #tables (tablename) VALUES ('GL40200')
INSERT INTO #tables (tablename) VALUES ('IV00101')
INSERT INTO #tables (tablename) VALUES ('IV00102')
INSERT INTO #tables (tablename) VALUES ('IV00103')
INSERT INTO #tables (tablename) VALUES ('IV00104')
INSERT INTO #tables (tablename) VALUES ('IV00105')
INSERT INTO #tables (tablename) VALUES ('IV00106')
INSERT INTO #tables (tablename) VALUES ('IV00107')
INSERT INTO #tables (tablename) VALUES ('IV00108')
INSERT INTO #tables (tablename) VALUES ('IV00109')
INSERT INTO #tables (tablename) VALUES ('IV40100')
INSERT INTO #tables (tablename) VALUES ('IV40201')
INSERT INTO #tables (tablename) VALUES ('IV40202')
INSERT INTO #tables (tablename) VALUES ('IV40400')
INSERT INTO #tables (tablename) VALUES ('IV40401')
INSERT INTO #tables (tablename) VALUES ('IV40500')
INSERT INTO #tables (tablename) VALUES ('IV40600')
INSERT INTO #tables (tablename) VALUES ('IV40700')
INSERT INTO #tables (tablename) VALUES ('IV40800')
INSERT INTO #tables (tablename) VALUES ('IV40900')
INSERT INTO #tables (tablename) VALUES ('IV41000')
INSERT INTO #tables (tablename) VALUES ('IV41001')
INSERT INTO #tables (tablename) VALUES ('IVC40100')
INSERT INTO #tables (tablename) VALUES ('IVC40101')
INSERT INTO #tables (tablename) VALUES ('MC40000')
INSERT INTO #tables (tablename) VALUES ('MC40100')
INSERT INTO #tables (tablename) VALUES ('PM00100')
INSERT INTO #tables (tablename) VALUES ('PM00101')
INSERT INTO #tables (tablename) VALUES ('PM00200')
INSERT INTO #tables (tablename) VALUES ('PM00203')
INSERT INTO #tables (tablename) VALUES ('PM00300')
INSERT INTO #tables (tablename) VALUES ('PM40100')
INSERT INTO #tables (tablename) VALUES ('PM40101')
INSERT INTO #tables (tablename) VALUES ('PM40102')
INSERT INTO #tables (tablename) VALUES ('PM40103')
INSERT INTO #tables (tablename) VALUES ('POP00101')
INSERT INTO #tables (tablename) VALUES ('POP40100')
INSERT INTO #tables (tablename) VALUES ('POP40600')
INSERT INTO #tables (tablename) VALUES ('RM00101')
INSERT INTO #tables (tablename) VALUES ('RM00102')
INSERT INTO #tables (tablename) VALUES ('RM00105')
INSERT INTO #tables (tablename) VALUES ('RM00201')
INSERT INTO #tables (tablename) VALUES ('RM00301')
INSERT INTO #tables (tablename) VALUES ('RM00303')
INSERT INTO #tables (tablename) VALUES ('RM40101')
INSERT INTO #tables (tablename) VALUES ('RM40201')
INSERT INTO #tables (tablename) VALUES ('RM40401')
INSERT INTO #tables (tablename) VALUES ('SOP00100')
INSERT INTO #tables (tablename) VALUES ('SOP00200')
INSERT INTO #tables (tablename) VALUES ('SOP40100')
INSERT INTO #tables (tablename) VALUES ('SOP40200')
INSERT INTO #tables (tablename) VALUES ('SOP40201')
INSERT INTO #tables (tablename) VALUES ('SOP40300')
INSERT INTO #tables (tablename) VALUES ('SOP40400')
INSERT INTO #tables (tablename) VALUES ('SOP40500')
INSERT INTO #tables (tablename) VALUES ('SOP40600')
INSERT INTO #tables (tablename) VALUES ('SY00300')
INSERT INTO #tables (tablename) VALUES ('SY01100')
INSERT INTO #tables (tablename) VALUES ('SY02200')
INSERT INTO #tables (tablename) VALUES ('SY02300')
INSERT INTO #tables (tablename) VALUES ('SY03000')
INSERT INTO #tables (tablename) VALUES ('SY03100')
INSERT INTO #tables (tablename) VALUES ('SY03300')
INSERT INTO #tables (tablename) VALUES ('SY04100')
INSERT INTO #tables (tablename) VALUES ('SY40100')
INSERT INTO #tables (tablename) VALUES ('SY40101')
INSERT INTO #tables (tablename) VALUES ('TX00101')
INSERT INTO #tables (tablename) VALUES ('TX00102')
INSERT INTO #tables (tablename) VALUES ('TX00201')
INSERT INTO #tables (tablename) VALUES ('UPR40100')
INSERT INTO #tables (tablename) VALUES ('UPR40101')
INSERT INTO #tables (tablename) VALUES ('UPR40200')
INSERT INTO #tables (tablename) VALUES ('UPR40301')
INSERT INTO #tables (tablename) VALUES ('UPR40500')
INSERT INTO #tables (tablename) VALUES ('UPR40501')
INSERT INTO #tables (tablename) VALUES ('UPR40600')
INSERT INTO #tables (tablename) VALUES ('UPR40700')
INSERT INTO #tables (tablename) VALUES ('UPR40800')
INSERT INTO #tables (tablename) VALUES ('UPR40801')
INSERT INTO #tables (tablename) VALUES ('UPR40900')
INSERT INTO #tables (tablename) VALUES ('UPR40901')
INSERT INTO #tables (tablename) VALUES ('UPR40902')
INSERT INTO #tables (tablename) VALUES ('UPR41100')
INSERT INTO #tables (tablename) VALUES ('UPR41200')
INSERT INTO #tables (tablename) VALUES ('UPR41201')
INSERT INTO #tables (tablename) VALUES ('UPR41400')
INSERT INTO #tables (tablename) VALUES ('UPR41401')
INSERT INTO #tables (tablename) VALUES ('UPR41500')
INSERT INTO #tables (tablename) VALUES ('UPR41700')
INSERT INTO #tables (tablename) VALUES ('UPR41800')
INSERT INTO #tables (tablename) VALUES ('UPR41801')
INSERT INTO #tables (tablename) VALUES ('UPR41900')
INSERT INTO #tables (tablename) VALUES ('UPR41901')
INSERT INTO #tables (tablename) VALUES ('UPR41902')
DECLARE curName CURSOR local fast_forward FOR
select tablename from #tables
DECLARE @tname varchar(10),
@intCount int,
@fieldList varchar(8000),
@cname varchar(255)
OPEN curName
WHILE 1=1
BEGIN
FETCH NEXT FROM curName INTO @tname
if @@fetch_status <> 0 begin
break
end
set @fieldList = ''
declare curFields CURSOR for
select syscolumns.name
from sysobjects
left join syscolumns on syscolumns.id = sysobjects.id
where sysobjects.name = @tname
and colstat <> 1
OPEN curFields
FETCH NEXT FROM curFields INTO @cname
WHILE @@FETCH_STATUS = 0
BEGIN
set @fieldList = @fieldList + @cname + ' ' + ', '
FETCH NEXT FROM curFields INTO @cname
END
CLOSE curFields
DEALLOCATE curFields
if len(@fieldlist) > 0 begin
set @fieldList = left(@fieldList, len(@fieldList) - 1)
end
print 'truncate table ' + @tname
print 'insert into ' + @tname + '(' + @fieldList + ')'
print ' select ' + @fieldList
print ' from ngb01..' + @tname
print 'print ''initialized ' + @tname + ''''
print ''
END
CLOSE curName
DEALLOCATE curName
GO