//////////////////////////////////////////////////////////////// // Technomaint 2004 (c) SofTech di Germinara Francesco 2000,2004 // www.germinara.it info@germinara.it // Story: // //////////////////////////////////////////////////////////////// // Checked Version: 6/5/2004 //////////////////////////////////////////////////////////////// #include"stdafx.h" #include"CFGField.h" //Standard Contructor CFGField::CFGField(){ m_strName= _T(""); m_Len=0; m_strDesc= _T(""); m_nType=0; m_nDec=0; m_strDefVal= _T(""); m_strValue= _T(""); m_nValue=0.0; memset(m_rowBufferData,0x00,_FPFIELDLEN); } //Imposta il valore del campo void CFGField::SetDataField(CString valore){ CString strForm; CString strPattern; CString strFit; if(m_nType == 0) //A/N strForm="s"; else strForm="f"; if(m_nType == 0) //A/N strPattern="%-"; else strPattern="%"; //if(m_nDec>0) // strFit.Format("%d",m_Len+1); //else strFit.Format("%d",m_Len); strPattern+=strFit; if(m_nType != 0){ //A/N strPattern+="."; strFit.Format("%d",m_nDec); strPattern+=strFit; } strPattern+=strForm; if(m_nType == 0) //A/N m_strValue.Format(strPattern,valore); else{ m_strValue.Format(strPattern,atof(valore)); m_nValue=atof(m_strValue); m_strValue.Remove('.'); if(m_bFillZero) ZeroFill(m_strValue); } } //Imposta il valore del campo void CFGField::SetDataField(double valore){ CString strFit; strFit.Format("%f",valore); SetDataField(strFit); } //Fill Blanks with Zeros void CFGField::ZeroFill(CString& strValue){ int j=0; for(j=0; j0) ??? // strFit.Format("%d",m_Len+1); //else strFit.Format("%d",m_Len); strPattern+=strFit; strPattern+="."; strFit.Format("%d",m_nDec); strPattern+=strFit; strPattern+=strForm; strValue.Format(strPattern,m_nValue); } return strValue; } //Restituisce il valore del campo Stringa CString CFGField::GetStringValue(){ if(m_nType == 0) return m_strValue; else return ""; } //Fine