View RSS Feed

Development Team Blog

  1. A Line Around Your Report

    In this short blog I want to show you how you can make a line around the output of your Visual Report Writer report. Visual Report Writer does not have a box - or a line - object that can go over multiple sections. The development team has granted to need for such a feature and will implement this via a page layer. In general: objects should not go over sections.

    A Fake Box
    What is a box? A box is a rectangle consisting of two horizontal and two vertical lines. This means it is ...
    Attached Thumbnails Attached Files
  2. Recursive Use of Structs and Arrays

    In a recent post at the forums the question was given how to make use of a recursive struct. Years ago I wrote a training manual about Structs and Arrays and in one of the exercises the trainees had to write a routine that could read the files in a folder from a disk. A folder can have 0-N files and 0-N sub-folders. In this blog I will explain you how you can build the code to read the information using arrays and structs.

    Nested Structs
    Because a folder can have 0-N files and ...
  3. How to Use SOAP Headers to Limit the Lifespan of a WebService Call

    In this blog I will show you how you can limit the amount of time that an application can call a webservice function. It is a small contribution to security and helps you against unwanted webservice calls.

    SOAP Headers
    A SOAP based WebService call always contains a body section and optionally can contain a header section. The use of a SOAP header section on both the Visual DataFlex server as well as client side is good documented in the help provided with the product. The good ...

    Updated 31-Dec-2011 at 07:59 AM by Vincent Oorsprong (Made a link to the conversions library)

    Categories
    Uncategorized
  4. Current Directory

    A couple of weeks ago in a Discovering Visual DataFlex training one of the trainees stumbled over a problem caused by the Current Directory. In this blog I tell you more about the problem and what the Current Directory has to do with it.

    The Problem
    In the case that let me make this blog a dbBitmap control was used to display an image. A dbBitmap control is a database aware control so the name of the image file is stored in a column of a row in a table. Pictures can be in a folder ...
  5. An Outlook Addresses Lookup List

    This week I had the need for a selection list with e-mail addresses that are stored in my Microsoft Outlook address book(s). So I created one. This blog explains in steps what you need to do to make one as well. The blog is based on version 16.1 of Visual DataFlex. If you do not have that version you cannot create the component.

    The Selection List
    One of the enhancements of Visual DataFlex 16.1 is a cCJGridPromptList class which offers a selection list that is not getting its ...
  6. Using Other Graphic Formats in Your cCJGrids

    About a year ago (November 2010) I posted a blog about how to use other graphic formats in the headers of a cCJGrid. A couple of days ago there was a request about how to use other graphic formats in the grid itself. While all the information is in the one-year-old blog I feel you all want to see an example on how to do this. So that is what this blog is about.

    In the previous blog I started with describing a column named oYellowCards. The blog was written shortly after the 2010 World ...

    Updated 2-Dec-2013 at 02:21 AM by Vincent Oorsprong (Images enlarged)

    Categories
    Uncategorized
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	YellowAndRedCardsPerPlayer.jpg 
Views:	2011 
Size:	83.1 KB 
ID:	4598   Click image for larger version. 

Name:	RedAndYellowCardData.jpg 
Views:	1910 
Size:	75.7 KB 
ID:	4599  
  7. I Cannot Connect To An ODBC Database

    I have setup a USER DSN in the ODBC Manager (Data Sources) which points to an Microsoft Access demodata database. Now I want to connect to this database with Data Access's Visual Report Writer and with Visual DataFlex Studio. In Visual Report Writer I simply cannot get past the selection of the DSN and in Visual DataFlex Studio I get a "Unable to Login to Server!" message. What is wrong? I thought DataFlex could connect to ODBC databases, isn't that true? If I use Microsoft Excel from Microsoft ...
  8. A Folder Selector With Initial Folder Setting

    This week two developers asked me about a folderbrowser/selector. Over the years several solutions have been created (fully) using the Windows API. But as far as I know they all do not have the ability to set the focus on a certain folder shown in the tree. And that is what the developers wanted to have. I said it is "simple" to make a folder selector yourself. This blog tells you how you can create one yourself using Visual DataFlex code and a bit Windows API code.

    The Dialog ...
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	2011-05-21_205030.jpg 
Views:	2319 
Size:	31.2 KB 
ID:	4354   Click image for larger version. 

Name:	2011-05-22_092811.jpg 
Views:	2359 
Size:	59.3 KB 
ID:	4355  
  9. Change Font of The Statusbar

    In almost every Visual DataFlex MDI Windows Application you have a statusbar. The statusbar is usually drawn at the bottom of your panel and is divided in one of more panes. Usually the first pane is reserved for statushelp. This blog tells you how you can change the appearance of a CodeJock statusbar and its panes.

    Font
    Changing the appearance of the statusbar means changing font attributes. The font settings of the statusbar and its panes are not exposed directly via properties ...
    Attached Thumbnails Attached Files
  10. The Boring Cursor_Wait

    If the program you write starts a task of which you know it will take some time it is important to indicate this to the user. You can do this by making use of the cursor_control object. The cursor_control object is an instance of the CursorShape class and created if you add:
    Code:
    Use DfCursor.Pkg
    to your code.

    Once the object is instantiated you can send the message cursor_wait to the object and you will see the mouse cursor changed from the I-beam or the arrow to a hourglass ...
  11. Getting More Out of Your Browser Control - Part III

    This is the third blog article about getting more out of the web browser control. In comments I have been asked to show code that uses the web browser control. In the first blog I mentioned that the web browser control is used in a welcome dialog for Database Explorer. Let's review the code for that dialog in this blog.

    The dialog
    Let's look at the dialog again, the picture shows how it looks like.
    ...

    Updated 2-Dec-2013 at 02:25 AM by Vincent Oorsprong (Images enlarged)

    Categories
    Uncategorized
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	2011-04-16_171510.jpg 
Views:	2704 
Size:	62.0 KB 
ID:	4257  
  12. How to Enumerate All Process Modules

    This blog teaches you how to write code to get a list of all the modules in use by the current process. This information is useful when you want to know if a certain module (DLL, OCX) has been loaded or not. It is a kind of debugging information. I would not advise you to add this in each and every program.

    To make a list of modules we need a couple of Windows API functions. First we need to get the ID of the current process (that it your executable). You can retrieve this by calling ...

    Updated 15-Apr-2011 at 12:29 PM by Vincent Oorsprong (CloseHandle Function added)

    Categories
    Uncategorized
  13. Create a New Universally Unique IDentifier (UUID)

    If you are in a need to have a unique ID in your application you might want to make use of a Universally Unique IDentifier (UUID). The term UUID is interchangeable with GUID (Globally Unique ID). A UUID is a string that contains five blocks of hexadecimal digits. The Windows API has functions for this and in this blog I show you how to create UUIDs in Visual DataFlex.

    An example of a valid UUID string is: 2CA263F1-5C94-11E0-84CC-002170FBAC5B. As you can see it consists of 8 hexadecimal ...
  14. Getting More Out of Your Browser Control

    Since the introduction of COM in Visual DataFlex, around Visual DataFlex version 5, there has been a example application that contains an ActiveX object that represents Microsoft's Internet Explorer. In the example, that loads a default web-page, you can enter another address, click on a hyper-link which loads a new page, go back or forward, all the usual operations you can do with Internet Explorer itself too. While this example is good you can do much more and this blog is informing you about ...

    Updated 2-Dec-2013 at 02:27 AM by Vincent Oorsprong (Images enlarged)

    Categories
    Uncategorized
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	TipOfTheDay.jpg 
Views:	2078 
Size:	75.3 KB 
ID:	4170   Click image for larger version. 

Name:	Import COM library.jpg 
Views:	2198 
Size:	110.4 KB 
ID:	4171  
  15. Loading Values in a ComboForm

    The ComboForm class is part of the Visual DataFlex product since it was introduced in 1996. The control is also called a drop-down box and combines a single value entry control with a list of options. By setting the property Entry_State to false you turn the control into a select only list, users can rotate through the values with a arrow-down/arrow-up keys and open the list by clicking on the arrow on the right. Usually the list is static and does not extend during the program run.

    ...
  16. Selecting a Data Source for a Visual Report Writer Report

    This blog informs you about the Data Source selection in Visual Report Writer. Visual Report Writer is a product created by Data Access Worldwide and fully written in Visual DataFlex. For this blog I used version 1.4 which was released in 2011. If you did not try or saw the product before you can download and try the report writer freely for 60 days. I also advise you to visit the Data Access Synergy conference in Orlando (March 30 - April 1); we will show the product there and organize a special ...
    Categories
    Uncategorized
  17. How to Add a Chart to Your Visual DataFlex Web Application?

    What do you need to do when you want to enrich your web application with some charts? First of all it is important to find data that let itself nicely present in a chart but you probably have that else you won't be interested in reading this blog. Then you need to decide what kind of chart you would like to use. Do you want a pie, a bar or a line graph? Dealt with this it is time to find a good API, a good tool that you can use. There are many solutions available on the web. For this blog I used ...

    Updated 2-Dec-2013 at 02:28 AM by Vincent Oorsprong (Images enlarged)

    Categories
    Uncategorized
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	TopNCustomers.jpg 
Views:	2315 
Size:	161.6 KB 
ID:	4100   Click image for larger version. 

Name:	TopNCustomers Part 1.jpg 
Views:	1999 
Size:	49.1 KB 
ID:	4101   Click image for larger version. 

Name:	Pie Chart.jpg 
Views:	2207 
Size:	103.5 KB 
ID:	4103  
    Attached Thumbnails Attached Images  
  18. DataFlex and SQL Injection

    Are Visual DataFlex projects that use one of the Data Access CLI connectivity kits (DB2 Connectivity Kit, ODBC Connectivty Kit and Microsoft SQL Server Connectivty Kit) vulnerable for attacks described as SQL Injection?

    From time to time we get this question because people read about SQL injection and with the CLI drivers you talk via ODBC to an SQL based server. To answer this question correctly one first needs to understand what SQL injection really is. Let's look what Microsoft ...
  19. Guiding Visitors of Your Website Directly to the Important Page

    Linking from another site to a specific page at your site, informing people about the specific topic at your website in a magazine or an e-mail (newsletter) can be done in different ways.

    One of the ways involves using the full URL like: http://www.dataaccess.eu/News.asp?pageid=2174. This works but the downside of such an URL are:
    • The URL is too long
    • People will make typing errors causing them not to go to the desired page
    • If the page is deactivated over time dead links
    ...

    Updated 2-Dec-2013 at 02:32 AM by Vincent Oorsprong (Images enlarged)

    Categories
    Uncategorized
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	Virtual Directory.jpg 
Views:	1468 
Size:	152.7 KB 
ID:	4043   Click image for larger version. 

Name:	Select Add Folder.jpg 
Views:	1203 
Size:	82.3 KB 
ID:	4044   Click image for larger version. 

Name:	Enter New Folder Name.jpg 
Views:	1552 
Size:	26.8 KB 
ID:	4045  
  20. Specify an Instruction Help Text in the Grid

    Imagine you are an end-user and you have the order entry view open. The screen is empty, what to do now? Of course you need to select an existing order or create a new order before you can go the data entry grid and enter order detail lines, but what if you do not know this? Wouldn't it be nice when the screen gives you some hints and tips? For example a text like: "You can enter this order detail grid after you selected an existing order or created a new order in the top half of the screen."? ...

    Updated 2-Dec-2013 at 02:33 AM by Vincent Oorsprong (Images enlarged)

    Categories
    Uncategorized
    Attached Thumbnails Attached Thumbnails Click image for larger version. 

Name:	2011-01-26_165715.jpg 
Views:	1199 
Size:	100.0 KB 
ID:	4018   Click image for larger version. 

Name:	2011-01-26_172520.jpg 
Views:	1169 
Size:	118.5 KB 
ID:	4019   Click image for larger version. 

Name:	2011-01-26_172638.jpg 
Views:	1220 
Size:	119.2 KB 
ID:	4020  
Page 2 of 3 FirstFirst 123 LastLast