<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>http://in.compucrete.com/index.php?action=history&amp;feed=atom&amp;title=Replicating_Keystone_Data_with_QueryGen</id>
	<title>Replicating Keystone Data with QueryGen - Revision history</title>
	<link rel="self" type="application/atom+xml" href="http://in.compucrete.com/index.php?action=history&amp;feed=atom&amp;title=Replicating_Keystone_Data_with_QueryGen"/>
	<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Replicating_Keystone_Data_with_QueryGen&amp;action=history"/>
	<updated>2026-05-15T15:30:34Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.40.0</generator>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Replicating_Keystone_Data_with_QueryGen&amp;diff=598&amp;oldid=prev</id>
		<title>WikiAdmin: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Replicating_Keystone_Data_with_QueryGen&amp;diff=598&amp;oldid=prev"/>
		<updated>2023-07-14T13:00:37Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 13:00, 14 July 2023&lt;/td&gt;
				&lt;/tr&gt;
&lt;!-- diff cache key my_wiki:diff::1.12:old-597:rev-598 --&gt;
&lt;/table&gt;</summary>
		<author><name>WikiAdmin</name></author>
	</entry>
	<entry>
		<id>http://in.compucrete.com/index.php?title=Replicating_Keystone_Data_with_QueryGen&amp;diff=597&amp;oldid=prev</id>
		<title>Intra&gt;Chanson: /* Sample Sequence */</title>
		<link rel="alternate" type="text/html" href="http://in.compucrete.com/index.php?title=Replicating_Keystone_Data_with_QueryGen&amp;diff=597&amp;oldid=prev"/>
		<updated>2018-05-11T16:28:09Z</updated>

		<summary type="html">&lt;p&gt;&lt;span dir=&quot;auto&quot;&gt;&lt;span class=&quot;autocomment&quot;&gt;Sample Sequence&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;[[CATEGORY: QueryGen]]&lt;br /&gt;
&lt;br /&gt;
This covers the process of using QueryGen to selectively replicate data from one Keystone company to another.  This process is useful when you need to copy a good portion but not all.   &lt;br /&gt;
&lt;br /&gt;
Querygen compared to other tools can take a little more work but gives more flexibility to select individual records.&lt;br /&gt;
&lt;br /&gt;
==Make it easy on yourself==&lt;br /&gt;
&lt;br /&gt;
===Keep the data in Interbase===&lt;br /&gt;
Do '''NOT''' export the data then import it.  This is a waste of time and effort.  It introduces data errors.&lt;br /&gt;
&lt;br /&gt;
===Let QueryGen do the hard work===&lt;br /&gt;
Take advantage of the Make Selection Query and Build Query options.&lt;br /&gt;
&lt;br /&gt;
==QueryGen Process==&lt;br /&gt;
&lt;br /&gt;
===Selection Query===&lt;br /&gt;
90% of the time you simply make a 'Select * from' query.  E.G. &amp;lt;PRE&amp;gt;Select * from artloc&amp;lt;/PRE&amp;gt; or &amp;lt;Select * from &amp;lt;PRE&amp;gt;ARTPLANT where ACTIVE_FLAG='Y'&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
When you want to select some of the data use the MK SEL QRY option.  This gives you a list of fields where you can delete the unwanted ones and generate a customized select query.&lt;br /&gt;
&lt;br /&gt;
===Build Query===&lt;br /&gt;
The BLD QRY tool is your friend.  In most cases you do not need to touch the default options for non-transaction tables (e.g. customers, products etc.)&lt;br /&gt;
&lt;br /&gt;
====Generators(Session Numbers)====&lt;br /&gt;
See: [[QueryGen#Generators]]&lt;br /&gt;
&lt;br /&gt;
====Incrementors(Transactions and Line Numbers)====&lt;br /&gt;
See: [[QueryGen#Incrementors]]&lt;br /&gt;
&lt;br /&gt;
==Get your data in Order==&lt;br /&gt;
&lt;br /&gt;
The trick is to find dependencies.  You can't add products without plants, product classes, gl accounts etc.  You can't add plants without locations.  You can't add gl account without gl groups.&lt;br /&gt;
&lt;br /&gt;
The general sequence:&lt;br /&gt;
*Categories,Classes&lt;br /&gt;
*Locations,Plants&lt;br /&gt;
*Commonly referred to master tables (GL Accounts)&lt;br /&gt;
*Common master tables&lt;br /&gt;
*Highly dependent tables (Pricing)&lt;br /&gt;
*Transactions&lt;br /&gt;
&lt;br /&gt;
===Sample Sequence===&lt;br /&gt;
&lt;br /&gt;
This is a sample import sequence.  This list would be expanded if other modules such as PO or CM were involved.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
ARTLOC&lt;br /&gt;
GLTACGRP&lt;br /&gt;
GLTACCT&lt;br /&gt;
GLTSEG&lt;br /&gt;
GLTFSDEF&lt;br /&gt;
ARTTXAUT&lt;br /&gt;
ARTTXLOC&lt;br /&gt;
ARTTXSTR&lt;br /&gt;
ARTPLANT (some default svc chg &amp;amp; def disc gl could be missing if inactive)&lt;br /&gt;
ARTEXCLS&lt;br /&gt;
ARTUMS  (Merge Method for autogenerated)&lt;br /&gt;
ARTPRCLS&lt;br /&gt;
ARPRGRP&lt;br /&gt;
ARTSLSPN&lt;br /&gt;
ARTTRCLS&lt;br /&gt;
ARTDRIV&lt;br /&gt;
ARTOWNER&lt;br /&gt;
ARTTRUCK&lt;br /&gt;
ARTCTCLS&lt;br /&gt;
ARTCUCLS&lt;br /&gt;
ARTPRICE&lt;br /&gt;
ARTARCLS&lt;br /&gt;
ARTCUST&lt;br /&gt;
DITEVENTTYPE&lt;br /&gt;
QTTREASONS&lt;br /&gt;
CCTOPTN (SECTION_NAME=SYSTEM), (USER DEFAULT, NOT SYSTEM)&lt;br /&gt;
APTPTCLS (merge)&lt;br /&gt;
APTTNCLS&lt;br /&gt;
APTTXAUT&lt;br /&gt;
APTVEND&lt;br /&gt;
PRTWKCOMPCLASS&lt;br /&gt;
PRTDEPT&lt;br /&gt;
PRTSTCODE&lt;br /&gt;
PRTFORMULA&lt;br /&gt;
PRTFORMFACT&lt;br /&gt;
PRTLINKS&lt;br /&gt;
PRTCOMPDEF&lt;br /&gt;
PRTEVENTYPE (Consider autogenerated)&lt;br /&gt;
PRTDEPTGLXREF&lt;br /&gt;
PRTEMPLOYEE&lt;br /&gt;
PRTEMPDEF (AutoCreated - Update Values)&lt;br /&gt;
PRTEMPFACT (AuotCreated - Update Values)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Special Cases==&lt;br /&gt;
&lt;br /&gt;
===ARTPRICE - GROUPS===&lt;br /&gt;
Select:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
SELECT * FROM ARTPRICE&lt;br /&gt;
WHERE PRICE_TYPE='G' AND ACTIVE_FLAG='Y'&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
MODEL HEADER:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
CREATE  TABLE TMP_SNO(SNO INTEGER);&lt;br /&gt;
INSERT INTO TMP_SNO (SNO)  SELECT session_no FROM CCP_SESSION_BEGIN('ADMIN', 'NEW SCRIPT', '127.0.0.1', '2.9.91.0');&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
Model&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
INSERT INTO ARTPRICE&lt;br /&gt;
( SESSION_NO, TRANS_NO, PRICE_TYPE, CUST_NO, GROUP_NO, PRICE_CODE, PRICE_ZONE, PRODUCT_CLASS, PRICE_PLANT_NO, PRODUCT_CODE, UNIT_OF_MEASURE, QTY_LEVEL, UNIT_PRICE, UNIT_PCT_DISC, IMPORTED_FLAG, MEMO, LAST_CHANGE_DATETIME, LAST_CHANGE_USER, ACTIVE_FLAG )  VALUES &lt;br /&gt;
( (SELECT SNO FROM TMP_SNO), {TRANS_NO|INC=1}, '{PRICE_TYPE}', '{CUST_NO}', '{GROUP_NO}', '{PRICE_CODE}', '{PRICE_ZONE}', '{PRODUCT_CLASS}', '{PRICE_PLANT_NO}', '{PRODUCT_CODE}', '{UNIT_OF_MEASURE}', {QTY_LEVEL}, {UNIT_PRICE}, '{UNIT_PCT_DISC}', '{IMPORTED_FLAG}', '{MEMO}', CAST('TODAY' AS TIMESTAMP), 'HIT', '{ACTIVE_FLAG}'    );&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===PRTPOP===&lt;br /&gt;
Select:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
SELECT POP. * FROM PRTPOP POP&lt;br /&gt;
  INNER JOIN PRTFORMULA F   ON F.FORMULA_ID=POP.FORMULA_ID AND F.ACTIVE_FLAG='Y'&lt;br /&gt;
  ORDER BY F.FORMULA_ID,POP.SEQUENCE&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
===PRTFORMFACT===&lt;br /&gt;
Select:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
SELECT FF. * FROM PRTFORMFACT FF&lt;br /&gt;
  INNER JOIN PRTFORMULA F   ON F.FORMULA_ID=FF.FORMULA_ID AND F.ACTIVE_FLAG='Y'&lt;br /&gt;
  ORDER BY F.FORMULA_ID  &lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
===PRTLINKS===&lt;br /&gt;
Select:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
SELECT L.* FROM PRTLINKS L&lt;br /&gt;
WHERE EXISTS (SELECT * FROM PRTCOMPDEF CD WHERE CD.LINK_ID=L.LINK_ID AND CD.ACTIVE_FLAG='Y')&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
===CCTOPTN===&lt;br /&gt;
Select System:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
SELECT * FROM CCTOPTN&lt;br /&gt;
WHERE &lt;br /&gt;
 SECTION_NAME='SYSTEM'&lt;br /&gt;
AND OPTION_NAME NOT IN ('SYSTEMDATE','FOREGROUNDQUERIES','PREVIEWZOOM','PREVIEWFONTNAME')&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Select Default:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
SELECT * FROM CCTOPTN&lt;br /&gt;
WHERE &lt;br /&gt;
 SECTION_NAME&amp;lt;&amp;gt;'SYSTEM'&lt;br /&gt;
AND USER_GROUP_ID='DEFAULT'&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;br /&gt;
&lt;br /&gt;
===Inactive GL in ARALCLS===&lt;br /&gt;
Select:&lt;br /&gt;
&amp;lt;PRE&amp;gt;&lt;br /&gt;
SELECT A.* FROM GLTACCT A&lt;br /&gt;
 INNER JOIN ARTALCLS AC ON AC.ALLOW_GL=A.GL_ACCOUNT AND A.ACTIVE_FLAG='N'&lt;br /&gt;
 (use default build create to add accts go gltacct)&lt;br /&gt;
&amp;lt;/PRE&amp;gt;&lt;/div&gt;</summary>
		<author><name>Intra&gt;Chanson</name></author>
	</entry>
</feed>