{"id":1890,"date":"2014-11-13T19:22:36","date_gmt":"2014-11-13T19:22:36","guid":{"rendered":"https:\/\/alt2.minisoft.com\/support\/?p=1890"},"modified":"2014-11-18T22:41:05","modified_gmt":"2014-11-18T22:41:05","slug":"using-data-access-from-powerbuilder-5-with-arrays","status":"publish","type":"post","link":"https:\/\/c002.minisoft.com\/support\/using-data-access-from-powerbuilder-5-with-arrays\/","title":{"rendered":"Using Data Access &#8211; From PowerBuilder 5 with Arrays"},"content":{"rendered":"<p>The MDMDA session object is being called from a PowerSoft PowerBuilder 5 application. This sample includes references to an item array (12J1).<\/p>\n<p class=\"subheads\">The dataset and items are defined as follows:<\/p>\n<pre>ITEMS:\r\nITEM-NO, Z6;\r\nSALES-PERIODS, 12X6;\r\nSALES-HISTORY, 12P12;\r\nMISC, 12J1;\r\nOTHER, J2;\r\n\r\nSETS:\r\nNAME: HISTORY, DETAIL (1\/18);\r\nENTRY: ITEM-NO(!HISTORY-M),\r\nSALES-PERIODS,\r\nSALES-HISTORY,\r\nMISC,\r\nOTHER;\r\nCAPACITY: 101;\r\nEND.<\/pre>\n<p><a href=\"https:\/\/alt2.minisoft.com\/support\/wp-content\/uploads\/2014\/11\/mdm_003.gif\"><img decoding=\"async\" loading=\"lazy\" class=\"alignnone size-full wp-image-1891\" src=\"https:\/\/alt2.minisoft.com\/support\/wp-content\/uploads\/2014\/11\/mdm_003.gif\" alt=\"mdm_003\" width=\"380\" height=\"323\" \/><\/a><\/p>\n<hr size=\"1\" \/>\n<p><strong>Declare Global Variables<\/strong><\/p>\n<pre>OLEObject da\r\nOLEObject db\r\nOLEObject ds\r\nstring upass<\/pre>\n<hr size=\"1\" \/>\n<p><strong>Open for window<\/strong><\/p>\n<pre>string t1\r\ninteger result\r\n\r\nopen (w_genapp_upass,w_genapp_frame)\r\n\r\nda = CREATE OLEObject\r\nresult = da.ConnectToNewObject ( \"MdmDA.Session\" )\r\nif result &lt;&gt; 0 then\r\nMessageBox(\"OLE Error\", \"Object not created\")\r\nclose ( w_genapp_frame )\r\nreturn\r\nend if\r\n\r\nda.TraceLevel = 0\r\nda.HostAddress = \"support\"\r\nda.Port = \"30002\"\r\nda.LoginUser = \"mgr\"\r\nda.UserPassword = upass\r\nda.LoginGroup = \"util\"\r\nda.LoginAccount = \"minisoft\"\r\nIf Not da.Connect Then\r\nMessageBox (\"MDMDA Error\", \"Connect failed\")\r\nclose ( w_genapp_frame )\r\nreturn\r\nEnd If\r\nIf da.LoginStatus = False Then\r\nMessageBox (\"MDMDA Error\", \"Login failed\")\r\nclose ( w_genapp_frame )\r\nreturn\r\nEnd If\r\ndb = da.AddImageDBRef(\"MSCARD\")\r\nds = db.AddDatasetRef(\"HISTORY\")\r\nIf Not db.Open(\"MSCARD\", \"UTIL\", \"MINISOFT\", 1, \"DO-ALL\") Then\r\nMessageBox (\"MDMDA Error\", \"Open failed\")\r\nclose ( w_genapp_frame )\r\nreturn\r\nEnd If\r\nds.Delimiter = \"\"\r\nIf Not ds.ReadSerialNext(\"@;\") Then\r\nMessageBox (\"MDMDA Error\", \"readserialnext failed\")\r\nreturn\r\nEnd If\r\n\r\nsle_1.Text = ds.Item(\"ITEM-NO\")\r\nt1 = ds.Item(\"MISC\")\r\nsle_2.Text = t1\r\nsle_misc_1.Text = string(integer(Mid(t1, 1, 6)),\"0\")\r\nsle_misc_2.Text = string(integer(Mid(t1, 7, 6)),\"0\")\r\nsle_misc_3.Text = string(integer(Mid(t1, 13, 6)),\"0\")\r\nsle_misc_4.Text = string(integer(Mid(t1, 19, 6)),\"0\")\r\nsle_misc_5.Text = string(integer(Mid(t1, 25, 6)),\"0\")\r\nsle_misc_6.Text = string(integer(Mid(t1, 31, 6)),\"0\")\r\nsle_misc_7.Text = string(integer(Mid(t1, 37, 6)),\"0\")\r\nsle_misc_8.Text = string(integer(Mid(t1, 43, 6)),\"0\")\r\nsle_misc_9.Text = string(integer(Mid(t1, 49, 6)),\"0\")\r\nsle_misc_10.Text = string(integer(Mid(t1, 55, 6)),\"0\")\r\nsle_misc_11.Text = string(integer(Mid(t1, 61, 6)),\"0\")\r\nsle_misc_12.Text = string(integer(Mid(t1, 67, 6)),\"0\")<\/pre>\n<hr size=\"1\" \/>\n<p><strong>clicked for cb_next<\/strong><\/p>\n<pre>string t1\r\n\r\nIf Not ds.ReadSerialNext(\"@;\") Then\r\nMessageBox (\"MDMDA Error\", \"readserialnext failed\")\r\nreturn\r\nEnd If\r\n\r\nsle_1.Text = ds.Item(\"ITEM-NO\")\r\nt1 = ds.Item(\"MISC\")\r\nsle_2.Text = t1\r\nsle_misc_1.Text = string(integer(Mid(t1, 1, 6)),\"0\")\r\nsle_misc_2.Text = string(integer(Mid(t1, 7, 6)),\"0\")\r\nsle_misc_3.Text = string(integer(Mid(t1, 13, 6)),\"0\")\r\nsle_misc_4.Text = string(integer(Mid(t1, 19, 6)),\"0\")\r\nsle_misc_5.Text = string(integer(Mid(t1, 25, 6)),\"0\")\r\nsle_misc_6.Text = string(integer(Mid(t1, 31, 6)),\"0\")\r\nsle_misc_7.Text = string(integer(Mid(t1, 37, 6)),\"0\")\r\nsle_misc_8.Text = string(integer(Mid(t1, 43, 6)),\"0\")\r\nsle_misc_9.Text = string(integer(Mid(t1, 49, 6)),\"0\")\r\nsle_misc_10.Text = string(integer(Mid(t1, 55, 6)),\"0\")\r\nsle_misc_11.Text = string(integer(Mid(t1, 61, 6)),\"0\")\r\nsle_misc_12.Text = string(integer(Mid(t1, 67, 6)),\"0\")<\/pre>\n<hr size=\"1\" \/>\n<p><strong>clicked for cb_previous<\/strong><\/p>\n<pre>If Not ds.Rewind Then\r\nMessageBox (\"MDMDA Error\", \"rewind failed\")\r\nreturn\r\nEnd If<\/pre>\n<hr size=\"1\" \/>\n<p><strong>clicked for cb_add<\/strong><\/p>\n<pre>string t1\r\n\r\nt1 = \"\"\r\nt1 = t1 + string(integer(sle_misc_1.Text),\"000000\")\r\nt1 = t1 + string(integer(sle_misc_2.Text),\"000000\")\r\nt1 = t1 + string(integer(sle_misc_3.Text),\"000000\")\r\nt1 = t1 + string(integer(sle_misc_4.Text),\"000000\")\r\nt1 = t1 + string(integer(sle_misc_5.Text),\"000000\")\r\nt1 = t1 + string(integer(sle_misc_6.Text),\"000000\")\r\nt1 = t1 + string(integer(sle_misc_7.Text),\"000000\")\r\nt1 = t1 + string(integer(sle_misc_8.Text),\"000000\")\r\nt1 = t1 + string(integer(sle_misc_9.Text),\"000000\")\r\nt1 = t1 + string(integer(sle_misc_10.Text),\"000000\")\r\nt1 = t1 + string(integer(sle_misc_11.Text),\"000000\")\r\nt1 = t1 + string(integer(sle_misc_12.Text),\"000000\")\r\nds.WriteItem(\"ITEM-NO\",sle_1.Text)\r\nds.WriteItem(\"MISC\",t1)\r\nsle_2.Text = t1\r\n\r\nIf Not ds.Write(\"@;\") Then\r\nMessageBox (\"MDMDA Error\", \"Write failed\")\r\nreturn\r\nEnd If<\/pre>\n","protected":false},"excerpt":{"rendered":"<p>The MDMDA session object is being called from a PowerSoft PowerBuilder 5 application. This sample includes references to an item array (12J1). The dataset and items are defined as follows: ITEMS: ITEM-NO, Z6; SALES-PERIODS, 12X6; SALES-HISTORY, 12P12; MISC, 12J1; OTHER, J2; SETS: NAME: HISTORY, DETAIL (1\/18); ENTRY: ITEM-NO(!HISTORY-M), SALES-PERIODS, SALES-HISTORY, MISC, OTHER; CAPACITY: 101; END. [&hellip;]<\/p>\n","protected":false},"author":75,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[61,54],"tags":[],"_links":{"self":[{"href":"https:\/\/c002.minisoft.com\/support\/wp-json\/wp\/v2\/posts\/1890"}],"collection":[{"href":"https:\/\/c002.minisoft.com\/support\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/c002.minisoft.com\/support\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/c002.minisoft.com\/support\/wp-json\/wp\/v2\/users\/75"}],"replies":[{"embeddable":true,"href":"https:\/\/c002.minisoft.com\/support\/wp-json\/wp\/v2\/comments?post=1890"}],"version-history":[{"count":1,"href":"https:\/\/c002.minisoft.com\/support\/wp-json\/wp\/v2\/posts\/1890\/revisions"}],"predecessor-version":[{"id":1892,"href":"https:\/\/c002.minisoft.com\/support\/wp-json\/wp\/v2\/posts\/1890\/revisions\/1892"}],"wp:attachment":[{"href":"https:\/\/c002.minisoft.com\/support\/wp-json\/wp\/v2\/media?parent=1890"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/c002.minisoft.com\/support\/wp-json\/wp\/v2\/categories?post=1890"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/c002.minisoft.com\/support\/wp-json\/wp\/v2\/tags?post=1890"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}