VF11 - Billing Date should be defaulted with system date
Hi All,
My requirement is to default the System date in Billing Date for the transaction VF11.
Please let me know whether any Exits/BADI exist for this.
I tried to create the field exit but the problem is for this Billing Date field there is no Parameter ID , so how can I assign the todays date to Billing date field in VF11 else is there any other way to do this ????.
Please do the needful.
Thanks in advance
hi ,
below are the exits available for vf11. choose the most apprapriate one
Transaction Code - VF11 Cancel Billing Document
Exit Name Description
SDVFX007 User exit: Billing plan during transfer to Accounting
SDVFX008 User exit: Processing of transfer structures SD-FI
SDVFX009 Billing doc. processing KIDONO (payment reference number)
SDVFX010 User exit item table for the customer lines
SDVFX011 Userexit for the komkcv- and kompcv-structures
V05I0001 User exits for billing index
V05N0001 User Exits for Printing Billing Docs. using POR Procedure
V60A0001 Customer functions in the billing document
V60P0001 Data provision for additional fields for display in lists
V61A0001 Customer enhancement: Pricing
SDVFX001 User exit header line in delivery to accounting
SDVFX002 User exit for A/R line (transfer to accounting)
SDVFX003 User exit: Cash clearing (transfer to accounting)
SDVFX004 User exit: G/L line (transfer to accounting)
SDVFX005 User exit: Reserves (transfer to accounting)
SDVFX006 User exit: Tax line (transfer to accounting)
regads,
Similar Messages
-
MIRO (Invoice Date) should be updated with Document date in MIGO Transactin
Hi all,
Please helo me in the issue . I need to replace the MIRO (Invoice Date) (INVFO-BLDAT)with Document Date in MIGO Transaction (MKPF-BLDAT). Can anyone suggest me the Userexit/ BADI for acheiving the same.Hi,
We have same requirement that MIRO date should not be lesser than GRN date. How could you solve your problem/
rajeswari -
Scheduling a report with System Date as prompt
Hi Experts,
We have came across a requirement where users want to have a date prompt.
While scheduling the report, by default prompt is to be populated with system date and it (prompt) should also allow us to select a different date.
This report is used for regular run and also for scheduling.
We need a single report with single prompt which allows us to run for any random date when prompted and also to be scheduled for the latest date.
Please give us advice/ suggestion.
Thanks
UttamHi Neil,
We have tried both the approaches given by you, but it is not working for my requirement.
Let me explain it with the below scenario.
scenario:
we have developed the report by using 2 data providers,
Dp1: It is a custom Query with date as follows ( it is a Transaction data) which brings the data from 1st day of month(user prompt) to user's prompt date.
TRANSACTION_DATE BETWEEN last_day(ADD_MoNTHS(@Prompt('As Of Date :','DT','ABC\plant\Transaction Date',Mono,Free,Persistent,,User:0)
Dp2: It is also Custom Query, but it has only data on month ends.
DIMV_plant_EOP.TRANS_END_OF_MONTH_DATE = last_day(ADD_MoNTHS(@Prompt('As Of Date :','DT','ABC\plant\EOP plant Attributes\EOP Date',Mono,Free,Persistent,,User:0),-1))
Report is having 3 prompts, namely
1) As of date (prompt)
2) Plant (prompt)
3) Country (Prompt)
For example: if my report is ran on 06-june-2014,
DP1: Brings the data from 1st of June to 6th of june.
DP2: Brings the Data from Inception to last month(say 30-may-2014) because it has only month end data.
Upto this it is fine.... but
My requirement is to schedule the report daily......
Example: User want to schedule a report today(10-July-2014), tomorrow(11-July-2014) and so on...
Scheduling should be done daily i.e, it has to fetch the data 10-Jul-2014, 11-july-2014,12-july-2014.... so on.
Automatically scheduling has to take the current date.
Thanks,.. -
Baseline date should be default GR date
Hi All,
Kindly give me step by step idea to do
Baseline date should be default GR date through user exit.
I am new in user exit.
if there is any other way to do this mentain that all with full details.
Thanks & Regards
Shantanu.Hi Shantanu again,
I giving example how to create Use exit and write your code.
E.g.
Follow the below steps:
1. Go to the 'Components' tab after displaying the enhancement MBCF0005 in smod.
2. Double click on the function module 'EXIT_SAPM07DR_001'.
3. Double click on the include ZXMBCU05 inside this function module.
( A warning message comes when u double clisck it, ignore it and press 'Enter'. Then u can code your enhancment in that include).
4. After the coding, activate the include and in tcode CMOD create a project and include the enhancement ZXMBCU05 in it and activate.
Your enhancement will be activated now and will be called during the processing.
after creating include put break-point in it and check with your t-code that breaking point is hitting or not.
Hope this will help.
Regards,
Vijay -
Order should be created on system date only
hi,
order should be created on system date only.Hello,
If you are not using any useexits or other enhancements, the system date will be defaulted to the document date. This is a standard SAP behaviour. As GSL explained, you may think of greying out the filed if you want to restrict the usera from changing the same.
Prase -
Data should be processed with one package only
Hello,
I need to load data from ods1 to ods2.
The logic if the transformation requires that data should be processed with one package only. Otherwise the result will be misleading.
I can increase the package size up to 1 mln but its not the best solution as actual numbers of records is unknown.
What would you recommend?
thanksHi,
We had a similar requirement for one of the projects, where data for the same key from base DSO were required in the same DP.
We worked it out in the End routine, where during the load we sort the data package for the same key combination and delete adjacent duplicates. then we lookup in the active table of the base DSO(ODS1 in your case) to get corresponding records for the same Key combination. Carry out the computaton and then populate the data package again..
Similar Sample Code in 3.5 update rule routine:
SORT DATA_PACKAGE[] BY material
/bic/zcdpcntry .
DELETE DATA_PACKAGE[] WHERE material IS INITIAL OR
/bic/zcdpcntry IS INITIAL .
CHECK DATA_PACKAGE[] IS NOT INITIAL.
DELETE ADJACENT DUPLICATES FROM DATA_PACKAGE[]
COMPARING material
/bic/zcdpcntry.
lit_dp[] = DATA_PACKAGE[] .
REFRESH DATA_PACKAGE[] .
SELECT material
datefrom
FROM /bic/azmd_o***00
INTO CORRESPONDING FIELDS OF TABLE lit_cc
FOR ALL ENTRIES IN lit_dp
WHERE material = lit_dp-material AND
/bic/zcdpcntry = lit_dp-/bic/zcdpcntry.
***Processing KLogic..****
Assigning to the datapackage.
DATA_PACKAGE[] = lit_dp[] .
Hope this Helps..
Regards -
Unable to use transactions with System.Data.OracleClient data provider
I am using VS2008, System.Data.OracleClient, Oracle 10g, and ODAC 10.2.0.20. I haven't been able to get transactions to work. When I use 'connection.BeginTransaction()', the rollback doesn't work. When I use TransactionScope, the output parameter is always DBNull. Any ideas/comments?
Here's the sample code:
// #define ENABLE_TRANSACTION // failure is 'rollback not working'
#define ENABLE_TRANSACTION_SCOPE // failure is 'no output parameter value'
using System;
using System.Collections.Generic;
using System.Data;
using System.Text;
using System.Data.OracleClient;
#if ENABLE_TRANSACTION_SCOPE
using System.Transactions;
#endif
namespace TestOracleTransaction
class Program
static void Main(string[] args)
#if ENABLE_TRANSACTION_SCOPE
using (TransactionScope scope = new TransactionScope())
#endif
string connectionString = "Data Source=ORADEV;User ID=user;Password=pwd";
using (OracleConnection connection = new OracleConnection(connectionString))
try
connection.Open();
#if ENABLE_TRANSACTION
using (OracleTransaction transaction = connection.BeginTransaction())
#endif
try
#if ENABLE_TRANSACTION_SCOPE
if (Transaction.Current == null)
throw new ArgumentException("no ambient transaction found for OracleClient");
#endif
OracleCommand command = connection.CreateCommand();
#if ENABLE_TRANSACTION
command.Transaction = transaction;
#endif
command.CommandType = CommandType.StoredProcedure;
command.CommandText = "TIS.P_TIS_GATEWAY_INFO_ADD";
OracleParameter param = command.CreateParameter();
param.ParameterName = "p_gateway_id";
param.Direction = ParameterDirection.Input;
param.DbType = DbType.Int64;
param.Value = 18;
command.Parameters.Add(param);
param = command.CreateParameter();
param.ParameterName = "p_info_id";
param.Direction = ParameterDirection.Input;
param.DbType = DbType.Int64;
param.Value = 79;
command.Parameters.Add(param);
param = command.CreateParameter();
param.ParameterName = "p_user";
param.Direction = ParameterDirection.Input;
param.DbType = DbType.String;
param.Value = "spms";
command.Parameters.Add(param);
param = command.CreateParameter();
param.ParameterName = "p_gateway_info_id";
param.Direction = ParameterDirection.Output;
param.DbType = DbType.Int64;
param.Size = sizeof(Int64);
command.Parameters.Add(param);
int count = command.ExecuteNonQuery();
object value = command.Parameters["p_gateway_info_id"].Value;
long id = (value == DBNull.Value) ? -1 : Convert.ToInt64(value);
if (id < 0)
// FAILURE - no output parameter value when TransactionScope enabled
throw new ArgumentException("no return value");
#if ENABLE_TRANSACTION
// FAILURE - rollback doesn't work when Transaction enabled
transaction.Rollback();
#endif
#if ENABLE_TRANSACTION_SCOPE
scope.Complete();
#endif
catch (Exception ex)
System.Console.WriteLine("ERROR: " + ex.Message);
#if ENABLE_TRANSACTION
transaction.Rollback();
#endif
finally
if (connection.State == ConnectionState.Open)
connection.Close();
}Hi,
First, this is not the place for questions with System.Data.OracleClient, this is the Oracle Data Provider for .NET forum. Having said that I went ahead and tested your code with some slight modifications because you did not provide the stored procedure information. I am assuming your stored procedure is doing some sort of DML since you are using transactions and attempting to commit and rollback.
I tested the following with both Transaction scope and a local transaction object and it worked fine with System.Data.OracleClient. I provided the create table and stored procedure I used.
Observations
========
When using transaction scope, a distributed transactions was executed and the data was inserted and returned in the output variable.
From console
p1 value is Hello World
From SQL Plus
SQL> select * from foo;
C1
Hello World
When using a local transaction, the DML was not inserted when calling rollback and when I changed it to commit, the row was inserted successfully.
Maybe you can test the simple foo example below to see if it works for you. Maybe there is something going on in your SP that is causing your specific observations.
The code I posted at this point is using local transaction and calling transaction.commit(), rollback is commented out. But I tested all scenarios and they worked as expected.
HTH
Jenny
#define ENABLE_TRANSACTION // failure is 'rollback not working'
//#define ENABLE_TRANSACTION_SCOPE // failure is 'no output parameter value'
using System;
using System.Collections.Generic;
using System.Data;
using System.Text;
using System.Data.OracleClient;
#if ENABLE_TRANSACTION_SCOPE
using System.Transactions;
#endif
create table foo (c1 varchar2(50));
create or replace procedure getstr (p1 out varchar2) as
begin
insert into foo(c1) values ('Hello World') returning c1 into p1;
end;
namespace TestOracleTransaction
class Program
static void Main(string[] args)
#if ENABLE_TRANSACTION_SCOPE
using (TransactionScope scope = new TransactionScope())
#endif
string connectionString = "Data Source=orcl;User ID=scott;Password=tiger";
using (OracleConnection connection = new OracleConnection(connectionString))
try
connection.Open();
#if ENABLE_TRANSACTION
using (OracleTransaction transaction = connection.BeginTransaction())
#endif
try
#if ENABLE_TRANSACTION_SCOPE
if (Transaction.Current == null)
throw new ArgumentException("no ambient transaction found for OracleClient");
#endif
OracleCommand command = connection.CreateCommand();
#if ENABLE_TRANSACTION
command.Transaction = transaction;
#endif
command.CommandType = CommandType.StoredProcedure;
command.CommandText = "SCOTT.GETSTR";
OracleParameter param = command.CreateParameter();
param.ParameterName = "p1";
param.Direction = ParameterDirection.Output;
param.DbType = DbType.AnsiString;
param.Size = 20;
command.Parameters.Add(param);
int count = command.ExecuteNonQuery();
object value = command.Parameters["p1"].Value;
Console.WriteLine("p1 value is {0}",value.ToString());
#if ENABLE_TRANSACTION
// FAILURE - rollback doesn't work when Transaction enabled
transaction.Commit();
//transaction.Rollback();
#endif
#if ENABLE_TRANSACTION_SCOPE
scope.Complete();
#endif
catch (Exception ex)
System.Console.WriteLine("ERROR: " + ex.Message);
#if ENABLE_TRANSACTION
transaction.Rollback();
#endif
finally
if (connection.State == ConnectionState.Open)
connection.Close();
} -
Given date time is in yyyyMMddHHmmss format, want to compare with system date time.
ie given date time is greater than zero then go inside if block otherwise else block.I am using below code which always greater than zero. But I want to use compare to method to compare given date with system date and goto if or else condition:
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");
String delaytimeFormat = sdf.format(new Date("10/10/2009"));
System.out.println("delaytimeFormat: "+delaytimeFormat);
long timeDiff = Long.parseLong(delaytimeFormat) - System.currentTimeMillis();
System.out.println("timeDiff->"+timeDiff);
String newCallbackUrl = null;
if(timeDiff > 0){
s = s+" new URL"+"test" ;
System.out.println("if:->"+s);
else{
System.out.println("else");
} -
Restrict date field in vf01 to system date .
hi gurus,
my requirement is to restrict date field in vf01 to system date .
i have changed the 011 routine in vtfa .
do I need any extra effort
debajyotiHi debajyothi
First of all which date field you want to restrict to systems date can you be more specific debajyothi
But In VOV8 , there is a pricing date field , if you customize it as per your requirement , like if you keep it blank then it will be systems date , or billing date , delivery date etc this can be one input if it is related to pricing
Even as you said in copy controls if you change the sub- routine then it will work
Regards
Srinath -
Simple question: validate infocube data by comparing it with PSA data
Hi all,
I want to validate infocube data by comparing it with PSA data, for that i went through PSA via context menu. After that i generated export datasource. Then i am not able to find PSA Export datasource? where can i find that..
Thanks
rajuHi all,
I´ve tryied to VALIDATE INFOCUBE DATA BY COMPARING IT WITH PSA DATA making the step by step contained in the HOW TO ...
The problem is that I have the following error when i activate the transfer rules after aggregating the infoobjet 0TCTREQUID and don´t know how to resolve it:
" IDoc segment /BIC/CICA7ZBW_RECEP_DI could not be assigned to IDoc ZSCA002
Message no. RSAR240
Diagnosis
The transfer structure is assigned to IDoc ZSCA002 as an IDoc segment for the data transfer between source system and Business Information Warehouse.
This assignment failed.
System response
IDoc segment /BIC/CICA7ZBW_RECEP_DI not known to IDoc V2&. Therefore, no data import can take place from the source system for this InfoSource."
Any idea of what could have happend?
Thanks in advance,
Diego -
How to insert data in a column with uniqueidefier data type
Guys,
I need insert data in a column with uniqueidefier data type, when i am trying to that getting error.
error message says: "Conversion failed when converting from a character string to uniqueidentifier."
I have data in table a col1,col2,col3,col4 - col3,col4 has datatype as varchar and i am updating table b columns col1,col2 with table a col3 and col4.
Please guide how to do it.Hi,
Not any String can be convert to uniqueidentifier.
1. you have to make sure u use a value which is fir to be uniqueidentifier
2. Use convert or cast in the insert query in order to convert the string into uniqueidentifier
insert X ... convert(uniqueidentifier, 'string which fit to be convert to uniqueidentifier')
Please post DDL+DML for more specific help
DDL = Data Definition Language. In our case that is, CREATE TABLE statements for your tables and other definitions that are needed to understand your tables structure and there for let us to test and reproduce the problem in our server. Without DDL no one
can execute any query.
How to get DDL: Right click on the table in Object Explorer and select script table as CREATE. Post these create table scripts here.
DML = data manipulation language is a family of queries used for manipulating the data it self like: inserting, deleting and updating data. In our case we need some sample data in order to check the query and get result, so we need some indert query for
sample data.
If you post a "create query" for the tables and "insert query" with some sample, then we could help you without Assuming/Guessing. There is a reason that DDL is generally asked for and expected when discussing query problems - it helps
to identify issues, clarify terminology and prevent incorrect assumptions. Sample data also provides a common point of reference for the discussion. A script that can be used to illustrate or reproduce the issue you have, will encourage others to help.
[Personal Site] [Blog] [Facebook] -
PR Date Should be less than PO date
Hi
I have done the change in message type to control PO date at the time of creation, now PO can be created only in current date but if at a later stage somebody has been created one more PR and change the PO and add one more line item from this PR then PR date is greater than PO date.
So this is objectionable and I want to control this i.e. PR date should be less than PO date.
Please guide how can i achieve this?
Regards
Ajay GoelHello,
Ajay if u you want to restrict the PO can be created only in current date then u can take help of your ABAPER because its possible through BADI.
If you want to add the other line item in PO Or Use Tcode Me22n you can not change the document date that time bcoz its disable check it. -
BAM Data Control - Group query with Active Data Service
Trying to get a group query from a BAM data control to work with Active Data Service in an ADF application (JDeveloper 11.1.1.4.0).
With a flat query, as the data changes, I can see DataChangeEvents fired, resulting in a data push to the client -
<BAMDataChangeEventFilter> <log>
#### DataChangeEvent #### on [DataControl name=CEP_Person_DOB_Flat, binding=data.view_mainPageDef.FlatDOB1.view_pageDefs_FlatDOBViewPageDef_WEB_INF_FlatDOB_xml_FlatDOB.QueryIterator]
Filter/Collection Id : 1966
Collection Level : 0
Event Id : 5
==== DataChangeEntry (#1)
ChangeType : INSERT_AFTER
KeyPath : [2157, 0]
InsertKeyPath : [null, 0]
AttributeNames : [id, _PersonKey, _County, _Surname, _AGE, _DOB, _Country, _FirstName]
AttributeValues : [2157, 10008/129, Vagzukarbsm, Gnnfzxxyqfgpsijcr, 110, Thu Dec 26 00:00:00 GMT 1901, Ekcqvrkoksr, Vwhm]
When I try a group query on the same data, currently just trying to group by _DOB for every 10 years to count the number of people, I get no data change events fired, so don't get any data pushed to the client, though the data has been changed if I refresh the page.
Any ideas ?can you include bam and jdev versions and also include exception from logs?
-
End date should not less than Start date, else CLEAR it
Hello
I put CONTRACT START DATE and CONTRACT END DATE fields on the form. These 2 objects (Date/Time objjects) i pulled them from Satndard tab of pallette and dropped on my layout page design, fine.
Now, am trying to put a validation that the end dat eshould not lower than start date, so, i got a thread as below from Niall,
http://forums.adobe.com/message/1909551
and i did my FormCalc coding under EXIT event of END DATE field as below,
// Pls. note this FormCalc
// End date should not less than Start date, else CLEAR it - Begin
var stDate
var endDate
stDate = xfa.resolveNode("CUSTOMER.Page31_Contracts.Con_Whole_Page.CON_Basic_Info.CON_START_DATE") .rawValue
endDate = xfa.resolveNode("CUSTOMER.Page31_Contracts.Con_Whole_Page.CON_Basic_Info.CON_END_DATE").r awValue
if (stDate > endDate) then
xfa.host.messageBox("End date is lower than Start date! End date is cleared")
xfa.resolveNode("CUSTOMER.Page31_Contracts.Con_Whole_Page.CON_Basic_Info.CON_END_DATE").r awValue = null
endif
// End date should not less than Start date, else CLEAR it - End
I tried in VALIDATE, CALCULATE, CHANGE events of END DATE, but nothing working!!
PLs. let me kow how can i achieve my requirement? I am anewbie,
Thank youIf you use the exit event, you will probably have to have the same code on both the start and end date fields since they have a dependancy on each other. Maybe better to try the validate event of the end date so that if either field is changed the event gets fired. You can try the following for validate event
// Pls. note this FormCalc
// End date should not less than Start date, else CLEAR it - Begin
var stDate
var endDate
stDate = CON_START_DATE.rawValue
endDate = $.rawValue
if ( HasValue(endDate) ) then
if (stDate > endDate) then
xfa.host.messageBox("End date is lower than Start date! End date is cleared")
$.rawValue = null
endif
endif
1
// End date should not less than Start date, else CLEAR it - End -
Contract End date should not less than Start date, else CLEAR it
Hello
I put CONTRACT START DATE and CONTRACT END DATE fields on the form. These 2 objects (Date/Time objjects) i pulled them from Satndard tab of pallette and dropped on my layout page design, fine.
Now, am trying to put a validation that the end dat eshould not lower than start date, so, i got a thread as below from Niall,
http://forums.adobe.com/message/1909551
and i did my FormCalc coding under EXIT event of END DATE field as below,
// Pls. note this FormCalc
// End date should not less than Start date, else CLEAR it - Begin
var stDate
var endDate
stDate = xfa.resolveNode("CUSTOMER.Page31_Contracts.Con_Whole_Page.CON_Basic_Info.CON_START_DATE") .rawValue
endDate = xfa.resolveNode("CUSTOMER.Page31_Contracts.Con_Whole_Page.CON_Basic_Info.CON_END_DATE").r awValue
if (stDate > endDate) then
xfa.host.messageBox("End date is lower than Start date! End date is cleared")
xfa.resolveNode("CUSTOMER.Page31_Contracts.Con_Whole_Page.CON_Basic_Info.CON_END_DATE").r awValue = null
endif
// End date should not less than Start date, else CLEAR it - End
I tried in VALIDATE, CALCULATE, CHANGE events of END DATE, but nothing working!!
PLs. let me kow how can i achieve my requirement? I am anewbie,
Thank youhttp://forums.adobe.com/message/4264933#4264933
Maybe you are looking for
-
Not able to access ACS 5.1.0.44
Hi I have two ACS appliance ver 5.1.0.44. I configured with replication and it was working fine. Last month my primary was down and not able to access but able to ping. I tried and Google it in Internet I couldn't find any answer t
-
Transmitting and Receiving an audio file in a web server
Hello all, How do I transmit an audio file from a Web Server as requested by a web based thin client (jsp)? Rgds, Seetesh
-
Errors occured during runtime in tomcat webserver
sir, when running a jsp program by using multiple clients ie nearly 60 clients.I got the error:TOO MANY CLIENT TASKS.I used msaccess as rhe backend.when I submit a form I implement two tasks ie to submit the form to database and another one to retrie
-
Media Mismatch when relinking from Proxy to ProRes
Hello, For some reason, when I relink identical ProRes Proxy and ProRes 422 files I occasionally get media mismatch start/end errors. Does this make any sense? Is this even possible? They were generated with Compressor from the same exact source vide
-
i have recently downloaded itunes into my windows 8 but i am unable to transfer my local videos and movies into the itunes though i can transfer my music. please help me to find out the problem. as well as i already have a data into my iphone and wha