Как получить данные из поля только для чтения в новое текстовое поле ввода, используя valuechangelistner? - PullRequest
0 голосов
/ 21 мая 2018

Мое требование: после того, как я введу значение в поле ввода текста, будет вызываться valuechangelistner, и данные будут заполнены в следующих полях только для чтения, а затем также должны быть заполнены следующие два входных текста.

Для этого я использую VO на основе запроса.

enter image description here

Когда я вводил номер сотрудника, номер сотрудника также заполнялся в приведенном ниже тексте ввода, ноЯ хочу, чтобы уровень также заполнялся в тексте ввода уровня ниже.

<af:panelGroupLayout id="pgl1">
        <af:spacer width="40" height="20" id="s5"/>
    <af:panelGroupLayout id="pgl2" layout="horizontal">
      <af:button text="Back to Search Page" id="b1" action="backCompEmptoSearch"/>
    </af:panelGroupLayout>
    <!--<af:inputText value="#{bindings.EmployeeNumber.inputValue}" label="#{bindings.EmployeeNumber.hints.label}"
                required="#{bindings.EmployeeNumber.hints.mandatory}"
                columns="#{bindings.EmployeeNumber.hints.displayWidth}"
                maximumLength="#{bindings.EmployeeNumber.hints.precision}" 
                shortDesc="#{bindings.EmployeeNumber.hints.tooltip}" id="it1"
                  valueChangeListener="#{CompBean.emphdrVCL}" autoSubmit="true">
    <f:validator binding="#{bindings.EmployeeNumber.validator}"/>
    <af:convertNumber groupingUsed="false" pattern="#{bindings.EmployeeNumber.format}"/>
  </af:inputText>-->
    <af:inputText label="EmployeeNumber" id="it9"  valueChangeListener="#{CompBean.emphdrVCL}" autoSubmit="true"/> 
    <af:spacer width="40" height="60" id="s3"/>
  <af:panelFormLayout id="pfl1" partialTriggers="it9" rows="2">
    <af:inputText value="#{bindings.EmployeeName.inputValue}" label="#{bindings.EmployeeName.hints.label}"
                  required="#{bindings.EmployeeName.hints.mandatory}" readOnly="true"
                  columns="#{bindings.EmployeeName.hints.displayWidth}"
                  maximumLength="#{bindings.EmployeeName.hints.precision}"
                  shortDesc="#{bindings.EmployeeName.hints.tooltip}" id="it2">
      <f:validator binding="#{bindings.EmployeeName.validator}"/>
    </af:inputText>
    <af:inputText value="#{bindings.ServiceLine.inputValue}" label="#{bindings.ServiceLine.hints.label}"
                  required="#{bindings.ServiceLine.hints.mandatory}" readOnly="true"
                  columns="#{bindings.ServiceLine.hints.displayWidth}"
                  maximumLength="#{bindings.ServiceLine.hints.precision}"
                  shortDesc="#{bindings.ServiceLine.hints.tooltip}" id="it3">
      <f:validator binding="#{bindings.ServiceLine.validator}"/>
      <af:convertNumber groupingUsed="false" pattern="#{bindings.ServiceLine.format}"/>
    </af:inputText>
    <af:inputText value="#{bindings.EmployeeType.inputValue}" label="#{bindings.EmployeeType.hints.label}"
                  required="#{bindings.EmployeeType.hints.mandatory}" readOnly="true"
                  columns="#{bindings.EmployeeType.hints.displayWidth}"
                  maximumLength="#{bindings.EmployeeType.hints.precision}"
                  shortDesc="#{bindings.EmployeeType.hints.tooltip}" id="it4">
      <f:validator binding="#{bindings.EmployeeType.validator}"/>
    </af:inputText>

    <af:inputText value="#{bindings.LevelId.inputValue}" label="#{bindings.LevelId.hints.label}" 
                  required="#{bindings.LevelId.hints.mandatory}" readOnly="true"
                  columns="#{bindings.LevelId.hints.displayWidth}" maximumLength="#{bindings.LevelId.hints.precision}"
                  shortDesc="#{bindings.LevelId.hints.tooltip}" id="it6" autoSubmit="true"
                  valueChangeListener="#{CompBean.TestVcl}">
      <f:validator binding="#{bindings.LevelId.validator}"/>
    </af:inputText>
    <af:inputText value="#{bindings.CountryId.inputValue}" label="#{bindings.CountryId.hints.label}"
                  required="#{bindings.CountryId.hints.mandatory}" readOnly="true"
                  columns="#{bindings.CountryId.hints.displayWidth}"
                  maximumLength="#{bindings.CountryId.hints.precision}" shortDesc="#{bindings.CountryId.hints.tooltip}"
                  id="it7">
      <f:validator binding="#{bindings.CountryId.validator}"/>
    </af:inputText>
    <af:inputText value="#{bindings.TownOrCity.inputValue}" label="#{bindings.TownOrCity.hints.label}"
                  required="#{bindings.TownOrCity.hints.mandatory}" readOnly="true"
                  columns="#{bindings.TownOrCity.hints.displayWidth}"
                  maximumLength="#{bindings.TownOrCity.hints.precision}"
                  shortDesc="#{bindings.TownOrCity.hints.tooltip}" id="it8">
      <f:validator binding="#{bindings.TownOrCity.validator}"/>
    </af:inputText>
      <af:inputText value="#{bindings.EffectiveStartDate.inputValue}" label="#{bindings.EffectiveStartDate.hints.label}"
                    required="#{bindings.EffectiveStartDate.hints.mandatory}"
                    columns="#{bindings.EffectiveStartDate.hints.displayWidth}"
                    maximumLength="#{bindings.EffectiveStartDate.hints.precision}"
                    shortDesc="#{bindings.EffectiveStartDate.hints.tooltip}" id="it5">
        <f:validator binding="#{bindings.EffectiveStartDate.validator}"/>
        <af:convertDateTime pattern="#{bindings.EffectiveStartDate.format}"/>
      </af:inputText>
      <af:inputText value="#{bindings.EffectiveEndDate.inputValue}" label="#{bindings.EffectiveEndDate.hints.label}"
                    required="#{bindings.EffectiveEndDate.hints.mandatory}"
                    columns="#{bindings.EffectiveEndDate.hints.displayWidth}"
                    maximumLength="#{bindings.EffectiveEndDate.hints.precision}"
                    shortDesc="#{bindings.EffectiveEndDate.hints.tooltip}" id="it10">
        <f:validator binding="#{bindings.EffectiveEndDate.validator}"/>
        <af:convertDateTime pattern="#{bindings.EffectiveEndDate.format}"/>
      </af:inputText>
      <af:inputText value="#{bindings.Ctc.inputValue}" label="#{bindings.Ctc.hints.label}"
                    required="#{bindings.Ctc.hints.mandatory}" columns="#{bindings.Ctc.hints.displayWidth}"
                    maximumLength="#{bindings.Ctc.hints.precision}" shortDesc="#{bindings.Ctc.hints.tooltip}" id="it17">
        <f:validator binding="#{bindings.Ctc.validator}"/>
        <af:convertNumber groupingUsed="false" pattern="#{bindings.Ctc.format}"/>
      </af:inputText>
    </af:panelFormLayout>
  <af:spacer width="40" height="40" id="s40"/>
  <!--<af:inputText value="#{bindings.Ctc.inputValue}" label="#{bindings.Ctc.hints.label}" 
                required="#{bindings.Ctc.hints.mandatory}" columns="#{bindings.Ctc.hints.displayWidth}"
                maximumLength="#{bindings.Ctc.hints.precision}" shortDesc="#{bindings.Ctc.hints.tooltip}" id="it5">
    <f:validator binding="#{bindings.Ctc.validator}"/>
    <af:convertNumber groupingUsed="false" pattern="#{bindings.Ctc.format}"/>
  </af:inputText>-->
  <af:panelFormLayout id="pfl2">

    <af:inputText label="EMPLOYEE_NUMBER" id="it11"  binding="#{CompBean.propertyEmpno}" partialTriggers="it9"/>
    <af:inputText label="CTC" id="it1"   binding="#{CompBean.propertyCtc}"/>
      <af:inputText label="Level" id="it18" binding="#{CompBean.propertyLevel}" partialTriggers="it6"/> 
      <!--<af:inputDate label="EFFECTIVE_START_DATE" id="id1" binding="#{CompBean.propertyEfdate}"/>

    <af:inputDate label="EFFECTIVE_END_DATE" id="id2" binding="#{CompBean.propertyEdDate}"/>-->

    </af:panelFormLayout>

Jedeveloper 12.1.3.0.0

1 Ответ

0 голосов
/ 29 мая 2018

в методе emphdrVCL. Вы запрашиваете VO, используя номер сотрудника, который вы получили из пользовательского ввода.

после выхода из VO, выберите текущую строку и получите значение атрибута для Ctc и LevelId и установитезначение для propertyLevel, propertyEdDate

...