multiple toplevel in vb.net - vb.net

I have a form "liste of customer" in the right there is a button when u click on it it's show another form named "search" it's let u search by a diff fields this form has a propriety TopLevel=true when user want to search for ex by bank account it's show another form which content the list of accounts this form also has to be on the top I mean has also propriety TopLevel=true but when I execute the code it doesn't work.
Please help me.
NB: TopLevel it s the same propriety as topmost.

You can use the ShowDialog() method instead of Show() e.g.
Search.ShowDialog()
Accounts.ShowDialog()

Related

Attach user form to UDF which is created in system form

I'm learning sap b1. I have created a field in marketing document. When I enter any value in this field and press on tab button, my user defined form should be open with the data from OITM table and find textbox and highlight the record with value which I entered in UDF.I already seen sample of SimpleForm but not getting anything from it. How can I achieve this?I'm using C# in VS. Plz help me with some examples/hints/code. I would be really grateful for your help!
Thanks.
You need to use choosefromlist controll, you should set Choosefromlist to item object 4, then in EditText properties choose this CFL and in the Alias field enter table filed which you want to filter when tab is pressed.

Creating a form where user inputs start and end dates of a report

I am working on MS Access 2007.
I am trying to create a form where the user will input 2 dates - a start date and an end date. I want these dates to become the boundaries of a report.
For example if the user inputs 01/03/14 and 10/03/14, I want Access to create a report of the data (eg Selling Price) between these two dates.
How can I do this?
There are a few ways to perform this.
The easiest, and most straight forward, in my personal opinion, involve creating a form where the user(s) will be entering Start/End dates, using a query that captures all of the information necessary for your report (including your date parameters), and the report with your query as the recordsource.
Form
Create a form with 2 text box controls: Name them whatever you like (StartDateTxt, EndDateTxt, for example), and a button control.
Query
Now, create a query, that retrieves all of the correct information you need for this report. I know you said selling price, for starters.
For the date fields you want to narrow down your search by, you need to put them in the WHERE clause or the Criteria field in QBE. It might look something like:
[Forms]![YourFormName]![StartDateTxt] and [Forms]![YourFormName]![EndDateTxt]
Note: Referencing fields can sometimes be tricky.
Report
Next, you need to create a report. If you're new to this, you can use the Report Wizard located at: Create - Reports section - Report Wizard.
You can select your query from the dropdown list on the first prompt, and add the fields you desire/need. Click next: Here you can sort your order of appearance on the report. Click next: Then you can justify your layout - if you aren't familiar with the differences, you can play around with them. Click next: Select a 'theme' to be applied to your report (font/colors, etc). Click next: Then you can either preview the report or Modify the report's design. (Really, you can do either, by clicking either button and clicking print preview or design view.)
If you click on Preview the report - Access should ask you for any parameters your underlying query requires.
Back to the form.
Right click on your button control. -> Properties -> Event -> OnClick -> click the [...] icon to the very right of the row. Select code builder.
VBA
In-between Private Sub and End Sub, you're going to write
DoCmd.OpenReport "YourReportName"
You can also check to make sure your report isn't already open.
Dim ReportName As String
ReportName = "YourReportName"
If CurrentProject.AllReports(ReportName).IsLoaded Then
DoCmd.Close acReport, ReportName
End If
DoCmd.OpenReport ReportName, acViewPreview
I hope this helps you/answers your question.
Edit: If anyone wants to edit/add on to this either by means of clarification or another alternative approach, please feel free. Just let me know.

"Enter parameter value" on access query issue

I'm trying to run an access SELECT query through a button on a subform. I need to use one of the fields in the subform as criteria for the query. I currently have this:
SELECT id, issue, complaint, action, reviewer, ticket
FROM tblEscalations
WHERE asin = Forms![form_name]![subform_name].[id];
Every time I run the query, I get the pop up asking for a parameter value for WHERE asin = Forms![form_name]![subform_name].[id];. Can you please tell me what's wrong with this?
I've only been doing Access for like a month and a half so the the answer might be very simple.
When you refer to a control which is contained on a subform, you must reference it via the name of the subform control rather than the name of the form which is contained in the subform control.
And the subform control name can be different than the name of the form which it contains.
Since Forms![form_name]![subform_name].[id] isn't working, subform_name may be the name of the form. You need to substitute the name of the subform control:
Forms!form_name!YourSubformControl!id
When you have that name correct, running this statement in the Immediate window will tell you "SubForm":
? TypeName(Forms!form_name!YourSubformControl!id)
Here is an Immediate window session on my system with a form named frmParent which includes a subform control named Child2. And that control contains a form named fsubColortable which in turn contains a text box named ID:
? TypeName(Forms!frmParent!Child2)
SubForm
? Forms!frmParent!Child2.Form.Name
fsubColortable
? Forms!frmParent!Child2!ID
1
If you're not familiar with the Immediate window, press Ctrl+g. Then type this in the window and press Enter
? Forms.Count
That should be enough to get you started. :-)

Need to build a macro that will take value(table name/form name) from a textbox and open the related table/form in ACCESS

i want to create a starting form in ACCESS that will hold a Textbox and a button.If user input text(say form name/table name) and click the button,it will show the form/table.If the name is not correct it will show a message.I am new in access.please help me with the macro or other things.
Thanks in advance.
Create a table and put the choices.
Create a blank form in design view.
In this blank form add a text box and a button.
Right click the text box, then choose Change To Combo Box
View the Combo Box properties
From the combo box properties, go to Data Tab
Here, you will see Row Source. Click the drop down in the Row Source and select the table where you put your choices.
You can Limit users to choose only from the available choices by changing Limit to List from No to Yes.
If you will limit your users from the choices, better not to add the button.

Gray out a form row's (detail's) button conditionally with VBA code

I have a standard form in MS-Access which lists a bunch of orders, and each row contains order no, customer, etc fields + a button to view notes and attached document files.
On request from our customer we should gray out the button btnAnm (or check or uncheck a checkbox) depending on a calculation from two queries to two other tables (a SELECT COUNT WHERE and a check if a text field is empty).
I've tried btnAnm_BeforeUpdate(...) and btnAnm_BeforeRender(...) and put breakpoints in the subs, but none of them trigger. The same if I use the control Ordernr instead of btnAnm.
I'd like a function in the Detail VBA code to be triggered for each "Me." (row) so to speak, and set the row's control's properties in that sub.
What do I do? I've looked at the help file and searched here.
*Edit: So I want to do something that "isn't made to work that way"? Ie. events are not triggered in Details.
As an alternative, could I base the value of a checkbox on each line on a query based on the 'Ordernr' field of the current row and the result of a SELECT COUNT from another table and empty field check?
Do I do this in the query the list is based on, or can I bind the extra checkbox field to a query?
A description of how to do this (combine a COUNT and a WHERE "not empty" to yes/no checkbox value) would be perfectly acceptable, I think! :)*
You cannot do much with an unbound control in a continuous form, anything you do will only apply to the current record. You can use a bound control with a click event so that it acts like a button.
Presumably the related documents have a reference to the order number that appears on your form, which means that you can create a control, let us call it CountOrders, with a ControlSource like so:
=DCount("OrderID","QueryName","OrderID=" & [OrderID])
The control can be hidden, or you can set it up to return true or False for use with a textbox, you can also use it for Conditional Formatting, but sadly, not for command buttons.
Expression Is [CountOrders]>0
You can also hide the contents and add a click event so that is acts in place of the command button. Conditional Formatting will allow you to enable or disable a textbox.
As I understand your question, you have a continuous form with as command button that appears on each row - and you'd like to enable/disable the button conditionally depending on the contents of the row.
Unfortunately you can't do that. It seems that you can't reference the individual command buttons separately.
Having wanted to do something similar in the past I came up with two alternate ways of setting up my interface.
Put a trap into the onClick code for the Button. Which is icky, because it is counter intuitive to the user. But it gets you that functionality now.
Move the command button (and editable fields) up into the form header, and make the rows read only. Your users then interact with the record only in the header, and select the record they want work with in the list below. As I recall this is known a Master-Detail interface.