{"id":493,"date":"2011-02-21T16:50:05","date_gmt":"2011-02-22T00:50:05","guid":{"rendered":"http:\/\/www.andreanolanusse.com\/en\/?p=493"},"modified":"2011-04-09T17:29:33","modified_gmt":"2011-04-10T01:29:33","slug":"copying-data-from-clientdataset-to-dbxreader","status":"publish","type":"post","link":"http:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/","title":{"rendered":"Copying data from ClientDataSet to DBXReader"},"content":{"rendered":"<p>You probably already read my post <a href=\"http:\/\/www.andreanolanusse.com\/en\/copying-dbxreader-to-clientdataset-datasnap-2010\/\" target=\"_blank\">Copying data from DBXReader to ClientDataSet<\/a>, now is time to learn how copy data from ClientDataSet to DBXReader using Delphi or C++Builder.<\/p>\n<p>There are many situations where you will need to copy data between ClientDataSet and DBXReader, specially if you are looking to cache data on DataSnap Servers, I&#8217;m preparing a new blog post about that and will publish soon.<\/p>\n<p>The\u00a0DBXDBReaders unit is part of DBX Framework and contain the\u00a0TDBXDataSetReader class which is a TDBXReader implementation of TDataSet, in other words using this class you will get a DBXReader representation\u00a0of any DataSet.<\/p>\n<p>You just need to create a instance of TDBXDataSetReader passing the ClientDataSet and the InstanceOwner (true\/false). If InstanceOwner is true, the TDataSet instance is freed when the TDBXDataSetReader instance is freed.<\/p>\n<p>Delphi<\/p>\n<pre class=\"brush: delphi\">  \r\n TDBXDataSetReader.Create(ClientDataSet, False (* InstanceOwner *) )\r\n<\/pre>\n<p>C++Builder<\/p>\n<pre class=\"brush: cpp\">  \r\n TDBXDataSetReader->Create(ClientDataSet, False )\r\n<\/pre>\n<p>TDBXDataSetReader class is compatible with DataSnap 2010 and XE.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>You probably already read my post Copying data from DBXReader to ClientDataSet, now is time to learn how copy data from ClientDataSet to DBXReader using Delphi or C++Builder. There are many situations where you will need to copy data between ClientDataSet and DBXReader, specially if you are looking to cache data on DataSnap Servers, I&#8217;m [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":483,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"_s2mail":"","footnotes":""},"categories":[11,10],"tags":[21,34,90],"class_list":["post-493","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-cbuilder","category-delphi","tag-datasnap","tag-dbexpress","tag-delphi"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v24.4 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Copying data from ClientDataSet to DBXReader | Andreano Lanusse | Technology and Software Development<\/title>\n<meta name=\"description\" content=\"You probably already read my post Copying data from DBXReader to ClientDataSet, now is time to learn how copy data from ClientDataSet to DBXReader using\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Copying data from ClientDataSet to DBXReader | Andreano Lanusse | Technology and Software Development\" \/>\n<meta property=\"og:description\" content=\"You probably already read my post Copying data from DBXReader to ClientDataSet, now is time to learn how copy data from ClientDataSet to DBXReader using\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/\" \/>\n<meta property=\"og:site_name\" content=\"Andreano Lanusse | Technology and Software Development\" \/>\n<meta property=\"article:published_time\" content=\"2011-02-22T00:50:05+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2011-04-10T01:29:33+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/01\/Icon_StarterEdition.png\" \/>\n\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t<meta property=\"og:image:height\" content=\"175\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Andreano Lanusse\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andreano Lanusse\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/\"},\"author\":{\"name\":\"Andreano Lanusse\",\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/b51fdf99c01fcd6ae0a5ae894c23837b\"},\"headline\":\"Copying data from ClientDataSet to DBXReader\",\"datePublished\":\"2011-02-22T00:50:05+00:00\",\"dateModified\":\"2011-04-10T01:29:33+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/\"},\"wordCount\":152,\"commentCount\":15,\"publisher\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/b51fdf99c01fcd6ae0a5ae894c23837b\"},\"image\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/01\/Icon_StarterEdition.png\",\"keywords\":[\"DataSnap\",\"dbExpress\",\"Delphi\"],\"articleSection\":[\"C++Builder\",\"Delphi\"],\"inLanguage\":\"en\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/\",\"url\":\"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/\",\"name\":\"Copying data from ClientDataSet to DBXReader | Andreano Lanusse | Technology and Software Development\",\"isPartOf\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/#primaryimage\"},\"thumbnailUrl\":\"http:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/01\/Icon_StarterEdition.png\",\"datePublished\":\"2011-02-22T00:50:05+00:00\",\"dateModified\":\"2011-04-10T01:29:33+00:00\",\"description\":\"You probably already read my post Copying data from DBXReader to ClientDataSet, now is time to learn how copy data from ClientDataSet to DBXReader using\",\"breadcrumb\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/#breadcrumb\"},\"inLanguage\":\"en\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en\",\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/#primaryimage\",\"url\":\"http:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/01\/Icon_StarterEdition.png\",\"contentUrl\":\"http:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/01\/Icon_StarterEdition.png\",\"width\":350,\"height\":175},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.andreanolanusse.com\/en\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Copying data from ClientDataSet to DBXReader\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/#website\",\"url\":\"https:\/\/www.andreanolanusse.com\/en\/\",\"name\":\"Andreano Lanusse | Technology and Software Development\",\"description\":\"Where Andreano Lanusse talk about technology, software development, programming techniques, databases, games and more through articles, tutorials and videos\",\"publisher\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/b51fdf99c01fcd6ae0a5ae894c23837b\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.andreanolanusse.com\/en\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/b51fdf99c01fcd6ae0a5ae894c23837b\",\"name\":\"Andreano Lanusse\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en\",\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/49ab23ef70c249c0cb3469f14ef07edc?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/49ab23ef70c249c0cb3469f14ef07edc?s=96&d=mm&r=g\",\"caption\":\"Andreano Lanusse\"},\"logo\":{\"@id\":\"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/image\/\"},\"description\":\"Andreano Lanusse is an expert and enthusiastic on software development industry, at Embarcadero he is focused on helping to make sure the products being developed meet the expectations of Embarcadero's customers, as well as defining market strategies for Latin America. Today as Latin Lead Evangelist he spends great deal of time in developer conferences, tradeshows, user group, and visiting customers throughout Latin America. Before Embarcadero, he worked 13 years for Borland, Andreano has worked as Support Coordinator, Engineer, Product Manager, including Product Line Sales Manager, where was responsible to manage the relationship with Brazil developer community, also has worked as Principal Consultant for Borland Consulting Services on the development and management of critical applications. He previously served as Chief Architect for USS Solu\u00e7\u00f5es Gerenciadas (now USS Tempo). Andreano holds a bachelor's degree in Business Administration Marketing Emphasis from Sumare Institute, MBA in Project Management from FGV, certification in Microsoft products, all Borland ALM products, and all CodeGear product line.\",\"sameAs\":[\"http:\/\/www.andreanolanusse.com\",\"https:\/\/x.com\/andreanolanusse\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Copying data from ClientDataSet to DBXReader | Andreano Lanusse | Technology and Software Development","description":"You probably already read my post Copying data from DBXReader to ClientDataSet, now is time to learn how copy data from ClientDataSet to DBXReader using","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/","og_locale":"en_US","og_type":"article","og_title":"Copying data from ClientDataSet to DBXReader | Andreano Lanusse | Technology and Software Development","og_description":"You probably already read my post Copying data from DBXReader to ClientDataSet, now is time to learn how copy data from ClientDataSet to DBXReader using","og_url":"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/","og_site_name":"Andreano Lanusse | Technology and Software Development","article_published_time":"2011-02-22T00:50:05+00:00","article_modified_time":"2011-04-10T01:29:33+00:00","og_image":[{"width":350,"height":175,"url":"https:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/01\/Icon_StarterEdition.png","type":"image\/png"}],"author":"Andreano Lanusse","twitter_misc":{"Written by":"Andreano Lanusse","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/#article","isPartOf":{"@id":"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/"},"author":{"name":"Andreano Lanusse","@id":"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/b51fdf99c01fcd6ae0a5ae894c23837b"},"headline":"Copying data from ClientDataSet to DBXReader","datePublished":"2011-02-22T00:50:05+00:00","dateModified":"2011-04-10T01:29:33+00:00","mainEntityOfPage":{"@id":"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/"},"wordCount":152,"commentCount":15,"publisher":{"@id":"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/b51fdf99c01fcd6ae0a5ae894c23837b"},"image":{"@id":"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/#primaryimage"},"thumbnailUrl":"http:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/01\/Icon_StarterEdition.png","keywords":["DataSnap","dbExpress","Delphi"],"articleSection":["C++Builder","Delphi"],"inLanguage":"en","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/","url":"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/","name":"Copying data from ClientDataSet to DBXReader | Andreano Lanusse | Technology and Software Development","isPartOf":{"@id":"https:\/\/www.andreanolanusse.com\/en\/#website"},"primaryImageOfPage":{"@id":"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/#primaryimage"},"image":{"@id":"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/#primaryimage"},"thumbnailUrl":"http:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/01\/Icon_StarterEdition.png","datePublished":"2011-02-22T00:50:05+00:00","dateModified":"2011-04-10T01:29:33+00:00","description":"You probably already read my post Copying data from DBXReader to ClientDataSet, now is time to learn how copy data from ClientDataSet to DBXReader using","breadcrumb":{"@id":"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/#breadcrumb"},"inLanguage":"en","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/"]}]},{"@type":"ImageObject","inLanguage":"en","@id":"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/#primaryimage","url":"http:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/01\/Icon_StarterEdition.png","contentUrl":"http:\/\/www.andreanolanusse.com\/en\/wp-content\/uploads\/2011\/01\/Icon_StarterEdition.png","width":350,"height":175},{"@type":"BreadcrumbList","@id":"https:\/\/www.andreanolanusse.com\/en\/copying-data-from-clientdataset-to-dbxreader\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.andreanolanusse.com\/en\/"},{"@type":"ListItem","position":2,"name":"Copying data from ClientDataSet to DBXReader"}]},{"@type":"WebSite","@id":"https:\/\/www.andreanolanusse.com\/en\/#website","url":"https:\/\/www.andreanolanusse.com\/en\/","name":"Andreano Lanusse | Technology and Software Development","description":"Where Andreano Lanusse talk about technology, software development, programming techniques, databases, games and more through articles, tutorials and videos","publisher":{"@id":"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/b51fdf99c01fcd6ae0a5ae894c23837b"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.andreanolanusse.com\/en\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en"},{"@type":["Person","Organization"],"@id":"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/b51fdf99c01fcd6ae0a5ae894c23837b","name":"Andreano Lanusse","image":{"@type":"ImageObject","inLanguage":"en","@id":"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/49ab23ef70c249c0cb3469f14ef07edc?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/49ab23ef70c249c0cb3469f14ef07edc?s=96&d=mm&r=g","caption":"Andreano Lanusse"},"logo":{"@id":"https:\/\/www.andreanolanusse.com\/en\/#\/schema\/person\/image\/"},"description":"Andreano Lanusse is an expert and enthusiastic on software development industry, at Embarcadero he is focused on helping to make sure the products being developed meet the expectations of Embarcadero's customers, as well as defining market strategies for Latin America. Today as Latin Lead Evangelist he spends great deal of time in developer conferences, tradeshows, user group, and visiting customers throughout Latin America. Before Embarcadero, he worked 13 years for Borland, Andreano has worked as Support Coordinator, Engineer, Product Manager, including Product Line Sales Manager, where was responsible to manage the relationship with Brazil developer community, also has worked as Principal Consultant for Borland Consulting Services on the development and management of critical applications. He previously served as Chief Architect for USS Solu\u00e7\u00f5es Gerenciadas (now USS Tempo). Andreano holds a bachelor's degree in Business Administration Marketing Emphasis from Sumare Institute, MBA in Project Management from FGV, certification in Microsoft products, all Borland ALM products, and all CodeGear product line.","sameAs":["http:\/\/www.andreanolanusse.com","https:\/\/x.com\/andreanolanusse"]}]}},"_links":{"self":[{"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/posts\/493","targetHints":{"allow":["GET"]}}],"collection":[{"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/comments?post=493"}],"version-history":[{"count":0,"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/posts\/493\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/media\/483"}],"wp:attachment":[{"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/media?parent=493"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/categories?post=493"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.andreanolanusse.com\/en\/wp-json\/wp\/v2\/tags?post=493"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}