Error in cfqueryparam, when getting date field from cfpop

Hi all,
i'm taking data from cfpop to store them in the database.
There are problems with date data:
INSERT .....
POST_DATE = <cfqueryparam value="#date#"
cfsqltype="cf_sql_timestamp">
But it fails in some situations, for instance:
The cause of this output exception was that:
coldfusion.runtime.locale.CFLocaleBase$InvalidDateTimeException:
"19 Sep 2006 00:51:33 +0200" is an invalid date or time string
Ok, I'm using English locale and tried to use
ParseDateTime(date, 'pop'). But it doesn't work either (!):
"19 Sep 2006 00:51:33 +0200" is not a valid date format. But
'pop' supposes, that this is format with time zone offset!!
P.S. The problem was that some email messages had incorrect
date format: one didn't have a day of week, another one - even day
of month!!!
To make life simpler, i've just added a regexp check:
<cfif
ReFindNoCase("[A-z]{3}\,\s[0-9]{2}\s[A-z]{3}\s[0-9]{2,4}\s[0-9]{2}:[0-9]{2}:[0-9]{2}\s(?: \+|\-)?[0-9]{4}",
date, 0)>
<cfset dateField = date>
<cfelse>
<cfset dateField = now()>
</cfif>
I'm not going to parse every possible date format
error.

I don't believe there's anyway to have Access ignore it on an import. What you can try instead is link to the file (instead of importing it) and write a query that updates the table based on the linked table, with an appropriate edit on the date/time field.
Doug Steele, Microsoft Access MVP
http://www.AccessMVP.com/djsteele (no e-mails, please!)
Co-author
Access Solutions — Tips, Tricks, and Secrets from Microsoft Access MVPs (ISBN 978-0-470-59168-0)

Similar Messages

  • EVDRE error "encountered problem when retrieving data from webserver"

    Hi,
    in a EVDRE we always get the error "encountered problem when retrieving data from webserver"
    When analysing this further we noticed this is always generated when a base member is selected in the CV and the expansion on the row for this dimension is has one of the following expansion settings:
    DEP
    ALL
    NOEXPAND
    if we select SELF, the error disappears again and the EVDRE works fine again ... is this normal behavior?
    there is no problem with application nor dimension.
    D
    solved it

    Note that the keyword "ALL" does not include the member itself. This may cause some confusion, but as Harish implies, when you select a base member it finds no matches if your memberset is "ALL".
    If you want to design a report to handle the user moving back and forth between base and non-base members in their CV, you either need to include SELF,ALL or SELF,DEP, or something similar....
    OR you need to get a little fancier, and use EVPRO to look and see if the CV member is base -- evpro(app,member,"CALC") -- and then use some conditional logic in Excel to choose the correct expansion options. If Calc=N, use Self, otherwise use SELF,DEP or whatever you choose. This can be a bit tricky if you then want the user to be able to drill down in the report (especially if you want the workbook option to insert add'l rows on the expansion, rather than replace), but it's all possible.

  • Error when getting data (RSDRI_CUBE_READ) - RSCRM_BAPI

    Hello Gurus,
                I am getting a error when I try to create a extract using RSCRM_BAPI using Process Chain.
                I created a job and used that in the Process Chain, Once I run the Process Chain it is executing and
               the job is deleted and the extract gives me this error in the Monitor.
                Error Message - Error when getting data (RSDRI_CUBE_READ)
                If I run manually I am able to see the extracted records.
                Please help.
    Regards,
    Raj

    Hi,
    "Unknown error when executing MDX" is msg number BRAINOLAPAPI012.
    Check out these 3 SAP notes:
    1091523 MDX: System error in connection with named sets
    1252372 OLE DB for OLAP: Additional corrctions for new MDX parser  
    1282785 MDX: System error "Invalid MDX command with <internal>     
    Also test in transaction MDXTEST to see if your statements are syntactically correct.
    Rgds,
    Colum

  • How to get Date Format from Local Object.

    Hi All,
    I am new to Web Channel.
    I need to know Date format From date of locale.
    suppose there is a date "01/25/2010" date in date field I want to get string "mm/dd/yyyy". Actually I have to pass date format to backend when I call RFC. 
    Is there any way to get Date format from "Locale" object. I should get date format for local object
    I get local object from "UserSessionData" object but how to get Date format from it.
    I am not looking for Date value. I am looking for current local date format ("mm/dd/yyyy or dd/mm/yyyy or mon/dd/yyyy) whatever local date format.  I could not find example which show how to get date format from "Locale" object.
    Any help will be appreciated with rewards.
    Regards.
    Web Channel

    Hi,
    You can get it from "User" or "Shop" business object.
    Try to get User or Shop Business Object as shown below.
    BusinessObjectManager bom = (BusinessObjectManager) userSessionData.getBOM(BusinessObjectManager.ISACORE_BOM);
    User user = bom.getUser();
    char decimalNotation = user.getDecimalPointFormat().getGroupingSeparator();
    If you are seeing "1,234.00" then above code will return "."
    I hope this information help you to resolve your issue.
    eCommerce Developer.

  • CRVS2010 beta - Date field from database does not display in report

    Hi there - can someone please help?!
    I am getting a problem where a date field from the database does not display in the report viewer (It displays on my dev machine, but not on the client machines...details given below)
    I upgraded to VS 2010
    I am using the CRVS2010 Beta
    My development machine is Windows 7 - and so is my fellow developer's
    We are using Microsoft SQL Server 2000
    We run the queries within VS and then we send the data table to VS using .SetDataSource
    We have a few reports which display the date on our dev machines (whether we run the EXE or from within Visual Studio)
    When we roll out to the client machines (running Windows XP SP3) then everything works, except that the date does not display (on quite a few reports)
    This is the only real issue I have had - a show stopper for me
    The rest works well - any input will be greatly appreciated
    Regards,
    Ridwan

    Hi Ridwan,
    After much testing I have it all working now using CRDB_adoplus.dll as a data source ( XML )
    Alter your Config file to look like this:
    <startup useLegacyV2RuntimeActivationPolicy="true">
    <supportedRuntime version="v4.0"/>
    </startup>
    Then using the code below, and CR requires the Schema to be able to read the date format.
    private void SetToXML_Click(object sender, EventArgs e)
    CrystalDecisions.CrystalReports.Engine.ReportDocument rpt = new CrystalDecisions.CrystalReports.Engine.ReportDocument();
    ISCDReportClientDocument rcd;
    rcd = rptClientDoc;
    string connString = "Provider=SQLOLEDB;Data Source=dwcb12003;Database=xtreme;User ID=sb;Password=password";
    string sqlString = "Select * From Orders";
    OleDbConnection oleConn = new OleDbConnection(connString);
    OleDbDataAdapter oleAdapter = new OleDbDataAdapter(sqlString, oleConn);
    //OleDbDataAdapter oleAdapter2 = new OleDbDataAdapter(sqlString2, oleConn);
    DataTable dt1 = new DataTable("Orders");
    oleAdapter.Fill(dt1);
    System.Data.DataSet ds = new System.Data.DataSet();
    // We need the schema to get the data formats
    ds.WriteXml("c:
    sc.xml", XmlWriteMode.WriteSchema);
    //Create a new Database Table to replace the reports current table.
    CrystalDecisions.ReportAppServer.DataDefModel.Table boTable = new CrystalDecisions.ReportAppServer.DataDefModel.Table();
    //boMainPropertyBag: These hold the attributes of the tables ConnectionInfo object
    PropertyBag boMainPropertyBag = new PropertyBag();
    //boInnerPropertyBag: These hold the attributes for the QE_LogonProperties
    //In the main property bag (boMainPropertyBag)
    PropertyBag boInnerPropertyBag = new PropertyBag();
    //Set the attributes for the boInnerPropertyBag
    boInnerPropertyBag.Add("File Path ", @"C:\sc.xml");
    boInnerPropertyBag.Add("Internal Connection ID", "{680eee31-a16e-4f48-8efa-8765193dccdd}");
    //Set the attributes for the boMainPropertyBag
    boMainPropertyBag.Add("Database DLL", "crdb_adoplus.dll");
    boMainPropertyBag.Add("QE_DatabaseName", "");
    boMainPropertyBag.Add("QE_DatabaseType", "");
    //Add the QE_LogonProperties we set in the boInnerPropertyBag Object
    boMainPropertyBag.Add("QE_LogonProperties", boInnerPropertyBag);
    boMainPropertyBag.Add("QE_ServerDescription", "NewDataSet");
    boMainPropertyBag.Add("QE_SQLDB", "False");
    boMainPropertyBag.Add("SSO Enabled", "False");
    //Create a new ConnectionInfo object
    CrystalDecisions.ReportAppServer.DataDefModel.ConnectionInfo boConnectionInfo =
    new CrystalDecisions.ReportAppServer.DataDefModel.ConnectionInfo();
    //Pass the database properties to a connection info object
    boConnectionInfo.Attributes = boMainPropertyBag;
    //Set the connection kind
    boConnectionInfo.Kind = CrConnectionInfoKindEnum.crConnectionInfoKindCRQE;
    //*EDIT* Set the User Name and Password if required.
    boConnectionInfo.UserName = "";
    boConnectionInfo.Password = "";
    //Pass the connection information to the table
    boTable.ConnectionInfo = boConnectionInfo;
    //Get the Database Tables Collection for your report
    CrystalDecisions.ReportAppServer.DataDefModel.Tables boTables;
    boTables = rptClientDoc.DatabaseController.Database.Tables;
    //For each table in the report:
    // - Set the Table Name properties.
    // - Set the table location in the report to use the new modified table
    boTable.Name = "Orders";
    boTable.QualifiedName = "Orders";
    boTable.Alias = "Orders";
    rptClientDoc.DatabaseController.SetTableLocation(boTables[0], boTable);
    //Verify the database after adding substituting the new table.
    //To ensure that the table updates properly when adding Command tables or Stored Procedures.
    rptClientDoc.VerifyDatabase();
    MessageBox.Show("Data Source Set", "RAS", MessageBoxButtons.OK, MessageBoxIcon.Information);
    Thanks again
    Don

  • Excute_query when new date selected from calender

    hi,
    i have a mater detail form. form is displaying current day values as default.
    i put a calendar to form for users can be select date.
    now,
    i want to excute_query when new date selected from calender.
    i writed below code to text_item(calendar) when_validate_item trigger but it nor woring
    .giving frm-40137 error.
    code is;
    :parameter.GUNLUK_TARIH := Name_In('PARAMATRELER.TARIH_SON');
    SET_RECORD_PROPERTY(1,'XXMOB_YAPBOZ_TAHTASI_GV',STATUS,QUERY_STATUS);
    go_block('XXMOB_YAPBOZ_TAHTASI_GV');
    DO_KEY('Execute_query');
    any help please
    best regards
    aykut

    I was thinking your date selected from CALENDAR ended in a list_item.
    I don't know I thinking that
    well,
    :master_block.itemdate is your text_item where calendar return date selected.
    and then , following Gerd's step
    Create a WHEN-MOUSE-DOUBLECLICK on the date-item of CALENDAR and write :
    begin
    :master_block.itemdate := calendar (.........);
    go_block ('master-block');
    execute_query;
    end;
    or set a global or parameter variable date selected from calendar :parameter. xxxxxx
    in a PRE-QUERY
    :master_block.itemdate := :parameter. xxxxxx
    and
    Create a WHEN-MOUSE-DOUBLECLICK on the date-item of CALENDAR and write :
    begin
    :parameter. xxxxxx := calendar( ....);
    go_block ('master-block');
    execute_query;
    end;
    regards

  • How to get data back from an action ?

    Hello,
    Would it be possible to get data back from an action (out of the question EO_MESSAGE & ET_FAILED_KEY )?
    For example we got an order with order positions and we need a "function" to e.g. count all positions. Because of Performance the function should not be processed each time the order is changed, read or a position is added. Instead the function should be processed only if it was called explicitly.
    Is it possible to create a kind of action which is actually counting all entries and export the number of them?
    How to mark a parameter in is_parameters as exporting?
    Is this just done by (naming-) convention?
    What is the preferred way to have “methods” with returning/exporting values?
    Regards,
    Lorenz

    Hello Lorenz,
    As you have already figured out , the Action API provides you with only the messages and failed keys if any.
    Post action execution , you can always execute a retrieve or retrive by association , to get the latest buffer snapshot , which of course would include the changes that you have made in your action.
    If you want to ensure that users have explict control on execution of your "fucntion", then of course , you should model it as an action on the BO.
    The parameter is_parameters is an IMPORTING parameter. You CANNOT use it to export anything back from the action. For importing ,  you can of course have any structure to use as the is_paramaters , which you model as the action parameter structure which modelling your BO action.
    From an external entity the only way to interact with a BO is by consuming the BO services and you are bound by the BOBF standard interfaces. Any and all data you require needs to be modelled as node attributes ( persistent or transient ) and fetched using the RETRIEVE, RETRIEVE_BY_ASSOCIATION or QUERY services.
    Regards,
    Indranil.

  • How to get additional field from the second list base on lookup information column ?

    Hi everyone,
    Currently I created a SharePoint hosted Apps project and I need to know how can I get additional field from the second list base on lookup information column. example List1 Have 2 columns column1 and column2(Lookup Information from list2 (category)),
    List2 have 3 columns title, and category, and color.  so how can get the title and color from list2 base on this lookup information column (SharePoint Hosted apps and Javascript code)? that is possible?
    Best regards,
    ------------------------------------------------------------ ---Tola---

    You can build one custom lookup control. Refer to the following post
    http://www.stuartroberts.net/index.php/2012/10/03/enhanced-lookup-field-part-1/
    Alternatively, try the following solution from codeplex
    http://sp2010filteredlookup.codeplex.com/
    http://filteredlookup.codeplex.com/
    --Cheers

  • How to load date field from a remote Oracle DB with DB Connect

    Hi,
    Does any one have experience extracting Date field from a remote Oracle database through DB Connect to BW?  I am experiencing data format issue.  The extracted data shows '04-Oct-0' for '10/4/05'.  It works fine if I create a view in Oracle database to preformat the data to '20051004'.  But, I am not allowed to create view in Remote DB.
    Any suggestion is very appreciated.
    Regards,
    Frank

    You have to change it to a varchar2 field. YYYYMMDD. I do not know of any other option.

  • "Internal Error Occurred" appears when .pdf is opened from Outlook 2010 email

    "Internal Error Occurred" appears when .pdf is opened from Outlook 2010 email
    I am absolutely pulling out my hair over this one!!
    PC/Win 7 64bit/Adobe XI/Office 2010
    I have tried Uninstalling and re-installing
    I have tried using an adobe software removal tool
    I have tried modifying the security settings in reader
    I've tried running repair on MS Office
    If you open the .pdf from an email directly, it opens Reader with the error "Internal Error Occurred"
    If you drag and drop the .pdf onto the desktop, and then open it, it opens.
    If you open Adobe Reader FIRST, then open the .pdf from the email, it opens fine.
    ONLY when you open a .pdf from an email with Adobe Reader closed (so Outlook is asking AR to open first, and then present the .pdf) is it behaving this way.
    Hypothesis: Outlook 2010 does not like to open Adobe Reader.
    SO....tell me all of you brilliant geniuses? How do I solve this puzzle and become an end user's hero?
    PS: WorkAround - the only work around I have found for this at present, is that the user first opens up Adobe Reader and lets it run in the background. I pinned the shortcut to his task bar to remind him.

    I have uninstalled Adobe Acrobat Reader DC and installed Adobe Reader XI and everything works fine. This will be our current fix until a solution is found for the above error

  • How to get Ethnicity field from IT 77 into BI

    We are in middle a new implementation of BI HCM and users want Ethnicity & Ethnic origin fields in BI. I can see Ethnic Origin as a attribute of Employee but can't find Ethnicity anywhere in standard BI content. What is the simplest way to get Ethnicity field from IT 77 (maintained by client) into BI.

    I would recommend enhancing the 0EMPLOYEE_ATTR DataSource by adding the Ethniticty column in an append structure of the extraction structure for that DataSource. Then to populate that field in the 0EMPLOYEE_ATTR DataSource, create a User Exit in CMOD (Function Module EXIT_SAPLRSAP_002).
    Then on BW, you're going to need to replicate the modified DataSource and in the 0EMPLOYEE InfioObject make sure you identify the attribute for Ethnicity as Navigational or Display. Then update the transformational processes to load into 0EMPLOYEE. Finally, you will need to add this custom InfoIObject to other InfoProvider(s) that you need it in (if any) to meet your end customer reporting requirements.
    Edited by: Dennis Scoville on Sep 10, 2009 8:33 PM

  • BAM Alerts - When a data field in a report meets specified conditions

    Hi ,
        Please find the below mentioned issue , which I am facing at the time of creating BAM alerts.
      I have created a data object, when i am creating the bam alert  [ create new alert --> create rule --> when i select an even " When a data field in a report meets specified conditions" and "When a data field in a data object meets specified conditions" then below in rule expression I am unable to edit the expression of  "this data fields has a specified condition of x".]
                          Appreciate your quick response.
    VAMSI.P

    Hi,
    I am having the same issue, and I am on IE9.  When I was on IE8 I had no problems.  Are you also on IE9
    Thanks
    Judy

  • IPhone says Unknown error has occurred when getting an app or update

    IPhone says "Unknown error has occurred" when getting an app or update.
    What should I do?

    I also have this problem. I am thinking i am going to call customer support about this tomorrow. If i get it fixed i will post on here.

  • SAP GRC 10.1 AMF No data selected when adding duplicate fields from separate tables for configurable data sources

    Hi There,
    In SAP GRC 10.0, our team had an issue where we could not add duplicate fields from separate table (see ERROR: Select Currency/UoM field for the selected analyzed fields). This was resolved by the SAP Note 1904313/ 1904314 (http://service.sap.com/sap/support/notes/1904313).
    We upgraded our system to SAP GRC 10.1 SP05 and could now add the duplicate fields from separate tables. SAP Note 1904313/ 1904314 was part of SAP GRC 10.1 SP03 so it makes sense that we, in a higher version (SP05), would be able to do this.
    The issue now is when we add the duplicate fields from different tables and run the Ad-hoc Query to test if the data source works correctly, the No Data Selected warning persists. This means that the data source provides no data for analysis, which is required to write our business rules.
    Below is an example:
    Basic data source with just one currency reference field EBAN-WAERS.
    When you run the Ad-Hoc Query you receive data.
    Basic data source with second currency reference field EKKO-WAERS.
    When you run the Ad-Hoc Query no data is found.
    Please also make reference to the following thread logged by my colleague (ERROR: Select Currency/UoM field for the selected analyzed fields)
    Any assistance to receive data with duplicate fields from separate tables will be highly appreciated.
    Thanking you in advance.
    Regards
    Gary Khan

    Hi
    following are the  error messages from dump
    hrtText
       There is already a line with the same key.
    hat happened?
       Error in ABAP application program.
       The current ABAP program "SAPLCKMS" had to be terminated because one of the
       statements could not be executed.
       This is probably due to an error in the ABAP program.
    rror analysis
       You wanted to add an entry to table "\FUNCTION-POOL=CKMS\DATA=T_DYN_CKMLCR",
        which you declared
       with a UNIQUE KEY. However, there was already an entry with the
       same key.
       This may have been in an INSERT or MOVE statement, or within a
       SELECT ... INTO statement.
       In particular, you cannot insert more than one initial line into a
       table with a unique key using the INSERT INITIAL LINE... statement.
    rigger Location of Runtime Error
       Program                                 SAPLCKMS
       Include                                 LCKMSF01
       Row                                     226
       Module type                             (FORM)
       Module Name                             DYNAMIC_PERIOD_CLOSING
    Source code where dump ocured
    222
    223           APPEND ht_ckmlpp TO t_add_ckmlpp.
    224           APPEND LINES OF ht_ckmlcr TO t_add_ckmlcr.
    225           INSERT ht_ckmlpp INTO TABLE t_dyn_ckmlpp.
    >>>>           INSERT LINES OF ht_ckmlcr INTO TABLE t_dyn_ckmlcr.
    227         ENDWHILE.
    Also I guess there is problem with material ledger in R/3 side
    I have never worked on material ledger before so dont hav idea of Tcode and tables in SAP R/3 for material ledger.
    Thanks
    Navneet

  • Error "Conversion failed when converting date and/or time from character string" to execute one query in sql 2008 r2, run ok in 2005.

    I have  a table-valued function that run in sql 2005 and when try to execute in sql 2008 r2, return the next "Conversion failed when converting date and/or time from character string".
    USE [Runtime]
    GO
    /****** Object:  UserDefinedFunction [dbo].[f_Pinto_Graf_P_Opt]    Script Date: 06/11/2013 08:47:47 ******/
    SET ANSI_NULLS ON
    GO
    SET QUOTED_IDENTIFIER ON
    GO
    CREATE   FUNCTION [dbo].[f_Pinto_Graf_P_Opt] (@fechaInicio datetime, @fechaFin datetime)  
    -- Declaramos la tabla "@Produc_Opt" que será devuelta por la funcion
    RETURNS @Produc_Opt table ( Hora datetime,NSACOS int, NSACOS_opt int)
    AS  
    BEGIN 
    -- Crea el Cursor
    DECLARE cursorHora CURSOR
    READ_ONLY
    FOR SELECT DateTime, Value FROM f_PP_Graficas ('Pinto_CON_SACOS',@fechaInicio, @fechaFin,'Pinto_PRODUCTO')
    -- Declaracion de variables locales
    DECLARE @produc_opt_hora int
    DECLARE @produc_opt_parc int
    DECLARE @nsacos int
    DECLARE @time_parc datetime
    -- Inicializamos VARIABLES
    SET @produc_opt_hora = (SELECT * FROM f_Valor (@fechaFin,'Pinto_PRODUC_OPT'))
    -- Abre y se crea el conjunto del cursor
    OPEN cursorHora
    -- Comenzamos los calculos 
    FETCH NEXT FROM cursorHora INTO @time_parc,@nsacos
    /************  BUCLE WHILE QUE SE VA A MOVER A TRAVES DEL CURSOR  ************/
    WHILE (@@fetch_status <> -1)
    BEGIN
    IF (@@fetch_status = -2)
    BEGIN
    -- Terminamos la ejecucion 
    BREAK
    END
    -- REALIZAMOS CÁLCULOS
    SET @produc_opt_parc = (SELECT dbo.f_P_Opt_Parc (@fechaInicio,@time_parc,@produc_opt_hora))
    -- INSERTAMOS VALORES EN LA TABLA
    INSERT @Produc_Opt VALUES (@time_parc,@nsacos, @produc_opt_parc)
    -- Avanzamos el cursor
    FETCH NEXT FROM cursorHora INTO @time_parc,@nsacos
    END
    /************  FIN DEL BUCLE QUE SE MUEVE A TRAVES DEL CURSOR  ***************/
    -- Cerramos el cursor
    CLOSE cursorHora
    -- Liberamos  los cursores
    DEALLOCATE cursorHora
    RETURN 
    END

    You can search the forums for that error message and find previous discussions - they all boil down to the same problem.  Somewhere in your query that calls this function, the code invoked implicitly converts from string to date/datetime.  In general,
    this works in any version of sql server if the runtime settings are correct for the format of the string data.  The fact that it works in one server and not in another server suggests that the query executes with different settings - and I'll assume for
    the moment that the format of the data involved in this conversion is consistent within the database/resultset and consistent between the 2 servers. 
    I suggest you read Tibor's guide to the datetime datatype (via the link to his site below) first - then go find the actual code that performs this conversion.  It may not be in the function you posted, since that function also executes other functions. 
    You also did not post the query that calls this function, so this function may not, in fact, be the source of the problem at all. 
    Tibor's site

Maybe you are looking for

  • How to divide MainPage.xaml.cs file

    The content of MainPage.xaml.cs is too larger. I'm going to divide the MainPage.xaml.cs into MainPage.xaml.cs and MainPage.xaml.A.cs. I create a xxx.cs file, and it's content as follows: public sealed partial class MainPage : Page private void DoSome

  • Can I combine multipe .swf files into one?

    Hello. I'm testing InDesign CS4 and it's ability to export a layout to a .swf file for viewing as a digital edition. I'd like to export multiple layouts and combine them into a single .swf file which can be read together. Is this possible, or would I

  • .cr2 + iPhoto '08 = failure

    My canon rebel XT (350D)'s .cr2 files aren't working with my macbook's iPhoto '08. This is a new problem -- I've previously imported .cr2 files from the same camera, using the same memory card. The problem isn't with the memory card, it's not corrupt

  • Trusted Authentication using QUERY_STRING

    Hi All, We are trying to configure the Trusted Authentication using Query_String in XIR3.1 We have customer portal ,where in login to custom web page and click on the link which routes to Infoview.We are configuring sso to bypass the credentials from

  • Class organisation of a GUI based application

    I am interested in some tips on how to organise classes in a application that has a GUI. I am not sure how many classes should i have. Should there be a new custom class for every component i use? Or should i make custom classes only for containers l